2017-01-12 8 views
0

Ich habe meine Arbeit abgeschlossen, bis die SQL-Tabelle Daten in Excel erhalten, aber ich möchte auch Daten in ein Balkendiagramm mit PHPEXCEL konvertieren. Hat jemand eine Idee? wie geht das? Mein PHPExcel Code ist unten,PHPExcel Balkendiagramm mit 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

Haben Sie sich in einem der PHPExcel Chart Beispiele geschaut? Sie zeigen, wie die meisten Arten von Diagrammen erstellt werden –

+0

Haben Sie einen Link? Ich habe nachgesehen, konnte aber nicht viel verstehen. –

+0

[Chart Creation Beispiele] (https://github.com/PHPOffice/PHPExcel/tree/1.8/Examples) mit Dateinamen wie '33chartcreate-bar.php' –

Antwort

2

Hier ist der Code für Balkendiagramm

// 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);