2017-01-12 28 views
0

私はExcelでSQLテーブルデータを取得するまで作業を完了しましたが、PHPEXCELを使用してデータを棒グラフに変換する必要があります。誰もが考えている?どうやってするか?マイPHPEXCELコードは以下の通りです、ここでPHPExcelを使用したPHPExcel棒グラフ

$sql = "SELECT sum(Ticket) AS count, Applications FROM Temp_table GROUP BY Apps"; 
$result = $conn->query($sql); 

if($result->num_rows > 0) 
{ 
$objPHPExcel = new PHPExcel(); 
$objPHPExcel->setActiveSheetIndex(0); 

    $rownumber = 2; 

    $objPHPExcel->getActiveSheet()->setCellValue('A1', 'Applications'); 
    $objPHPExcel->getActiveSheet()->setCellValue('B1', 'Count'); 

    while($row = $result->fetch_assoc()) 

    { 
    $objPHPExcel->getActiveSheet()->setCellValue('A'.$rownumber, $row["Applications"]); 
    $objPHPExcel->getActiveSheet()->setCellValue('B'.$rownumber, $row["count"]); 
     $rownumber++; 

    } 
    $objPHPExcel->getActiveSheet()->setTitle('Sheet1'); 

    } 
+0

のコード であるあなたはPHPExcelチャートの例のいずれかで見たことがありますか?彼らはほとんどのタイプのチャートを作成する方法を示します –

+0

あなたはリンクを持っていますか?私はチェックしましたが、それほど理解できませんでした。 –

+0

[33.33calcreate-bar.php]のようなファイル名で[Chart Creation examples](https://github.com/PHPOffice/PHPExcel/tree/1.8/Examples) –

答えて

2

は棒グラフ

// Set the Labels for each data series we want to plot 
// Datatype 
// Cell reference for data 
// Format Code 
// Number of datapoints in series 
// Data values 
// Data Marker 
$dataSeriesLabels = array(
    new PHPExcel_Chart_DataSeriesValues('String', 'Data!$D$1', NULL, 1), // 2011 
); 
// Set the X-Axis Labels 
// Datatype 
// Cell reference for data 
// Format Code 
// Number of datapoints in series 
// Data values 
// Data Marker 
$xAxisTickValues = array(
    new PHPExcel_Chart_DataSeriesValues('String', 'Data!$A$2:$A$5', NULL, 6), // Q1 to Q4 
); 
// Set the Data values for each data series we want to plot 
// Datatype 
// Cell reference for data 
// Format Code 
// Number of datapoints in series 
// Data values 
// Data Marker 
$dataSeriesValues = array(

    new PHPExcel_Chart_DataSeriesValues('Number', 'Data!$D$2:$D$5', NULL, 6), 

); 
// Build the dataseries 
$series = new PHPExcel_Chart_DataSeries(
    PHPExcel_Chart_DataSeries::TYPE_BARCHART, // plotType 
    PHPExcel_Chart_DataSeries::GROUPING_CLUSTERED, // plotGrouping 
    range(0, count($dataSeriesValues)-1),  // plotOrder 
    $dataSeriesLabels,    // plotLabel 
    $xAxisTickValues,    // plotCategory 
    $dataSeriesValues    // plotValues 
); 
// Set additional dataseries parameters 

// Set the series in the plot area 
$plotArea = new PHPExcel_Chart_PlotArea(NULL, array($series)); 
// Set the chart legend 
$legend = new PHPExcel_Chart_Legend(PHPExcel_Chart_Legend::POSITION_RIGHT, NULL, false); 
$title = new PHPExcel_Chart_Title('Topic Relevance'); 
$yAxisLabel = new PHPExcel_Chart_Title('Points'); 
// Create the chart 
$chart = new PHPExcel_Chart(
    'chart1', // name 
    $title,  // title 
    $legend, // legend 
    $plotArea, // plotArea 
    true,  // plotVisibleOnly 
    0,  // displayBlanksAs 
    NULL,  // xAxisLabel 
    $yAxisLabel // yAxisLabel 
); 
// Set the position where the chart should appear in the worksheet 
$chart->setTopLeftPosition('B10'); 
$chart->setBottomRightPosition('F25'); 
// Add the chart to the worksheet 
$objWorksheet->addChart($chart); 
$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007'); 
//this line is necessary to display chart in excel 
    $objWriter->setIncludeCharts(TRUE);