PHPExcel生成图表

WBOY
发布: 2016-06-23 13:27:42
原创
1672 人浏览过

PHPExcel下载

自带的例子:



生成折线图示例:

<?php $dir = dirname(__FILE__);	require $dir."/db.php";	require $dir."/PHPExcel.php";	$db = new db($phpexcel);	$objPHPExcel = new PHPExcel();	$objSheet = $objPHPExcel->getActiveSheet();	$data = array(		array("","一班","二班","三班"),		array("不及格",20,30,40),		array("良好",30,50,70),		array("优秀",14,12,30)	);	$objSheet->fromArray($data);	//图表	$labels = array(		new PHPExcel_Chart_DataSeriesValues('String','Worksheet!$B$1',null,1),//一班		new PHPExcel_Chart_DataSeriesValues('String','Worksheet!$C$1',null,1),//二班		new PHPExcel_Chart_DataSeriesValues('String','Worksheet!$D$1',null,1),//三班	);	$xLabels = array(		new PHPExcel_Chart_DataSeriesValues('String','Worksheet!$A$2:$A$4',null,3),//取x轴刻度	);	$datas = array(		new PHPExcel_Chart_DataSeriesValues('Number','Worksheet!$B$2:$B$4',null,3),//取一班数据		new PHPExcel_Chart_DataSeriesValues('Number','Worksheet!$C$2:$C$4',null,3),//取二班数据		new PHPExcel_Chart_DataSeriesValues('Number','Worksheet!$D$2:$D$4',null,3),//取三班数据	);	$series = array(		new PHPExcel_Chart_DataSeries(			PHPExcel_Chart_DataSeries::TYPE_LINECHART,			PHPExcel_Chart_DataSeries::GROUPING_STANDARD,			range(0, count($labels)-1),			$labels,			$xLabels,			$datas		)	); //图表框架	$layout=new PHPExcel_Chart_Layout();	$layout->setShowVal(true);	$areas = new PHPExcel_Chart_PlotArea($layout,$series);	$legend = new PHPExcel_Chart_Legend(PHPExcel_Chart_Legend::POSITION_RIGHT,$layout,false);	$title = new PHPExcel_Chart_Title("高一学生成绩分布");	$ytitle = new PHPExcel_Chart_Title("人数");	$chart = new PHPExcel_Chart('line_chart',$title,$legend,$areas,true,false,null,$ytitle);	$chart->setTopLeftPosition("A7")->setBottomRightPosition("K25"); //图表位置	$objSheet->addChart($chart);	$excel = 'Excel2007';	$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel,$excel);	$objWriter->setIncludeCharts(true); //图表必须	// $objWriter->save($dir.'/export.xls'); //生成excel文件	browser_export($excel,"browser_chart.xlsx"); //浏览器输出	SaveViaTempFile($objWriter);	function browser_export($type, $filename){		if($type == "Excel5"){			header('Content-Type: application/vnd.ms-excel'); //excel2003		}else{			header('Content-Type: application/vnd.openxmlformats-officedocument.spreadsheetml.sheet'); //excel2007		}		header('Content-Disposition: attachment;filename="'.$filename.'"');		header('Cache-Control: max-age=0');	}	/*解决Excel2007不能导出*/	function SaveViaTempFile($objWriter){	    $filePath = dirname(__FILE__) . rand(0, getrandmax()) . rand(0, getrandmax()) . ".tmp";	    $objWriter->save($filePath);	    readfile($filePath);	    unlink($filePath);	}			
登录后复制


效果图:

参考文章:

PHPExcel 

PHPExcel+MySQL 

PHPExcel样式

版权声明:本文为博主原创文章,未经博主允许不得转载。

相关标签:
来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板