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樣式
著作權聲明:本文為博主原創文章,未經博主允許不得轉載。