PHPExcel組建圖表

來源:互聯網
上載者:User
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樣式

著作權聲明:本文為博主原創文章,未經博主允許不得轉載。

  • 相關文章

    聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

    如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

    A Free Trial That Lets You Build Big!

    Start building with 50+ products and up to 12 months usage for Elastic Compute Service

    • Sales Support

      1 on 1 presale consultation

    • After-Sales Support

      24/7 Technical Support 6 Free Tickets per Quarter Faster Response

    • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.