欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

PHPExcel生成图表

程序员文章站 2024-02-07 19:42:58
...
PHPExcel下载

自带的例子:



生成折线图示例:

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样式

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

相关标签: PHPExcel生成图表