2017-03-02 17 views
6

wziąłem przykład z 33chartcreate-pie.php z PHPExcel-1.8 i zmieniając zgodnie z moimi potrzebami. teraz przykład ma wartość osi X jak.jak wysłać dane z arkusza roboczego statycznie w tabeli PHPExcel

$xAxisTickValues1 = array(
new PHPExcel_Chart_DataSeriesValues('String', 'Worksheet!$A$2:$A$5', NULL, 4), // Q1 to Q4 
); 

Teraz chcę dodać statyczny jako przejścia testów tak, staram się jak

$xAxisTickValues1 = array(
new PHPExcel_Chart_DataSeriesValues('String', 'PASS:FAIL', NULL, 2), // Q1 to Q4 
); 

, ale to nie działa. jak umieścić wartość statyczną to tablica?

Odpowiedz

2

Przykład którą podążać:

$xAxisTickValues1 = array(
new PHPExcel_Chart_DataSeriesValues('String', 'Worksheet!$A$2:$A$5', NULL, 4), // Q1 to Q4 
); 

Tutaj Arkusz jest tytuł płyty. Więc podczas kreślenia wykresu odczyta wartość z określonego tytułu, a następnie kolumny jako A2 do A5.

Jeśli chcesz po prostu dodać wartość statyczną. Utwórz komórkę z zawartością statyczną i przekaż indeks komórki do wartości serii danych.

1

Musimy pokazać etykiety statyczne w komórkach, aby pokazać je na wykresie lub karcie PIE. Podczas drukowania wykresu możemy pokazać i ukryć etykiety lub wartości za pomocą funkcji takich jak setShowVal, setShowCatName.

$objPHPExcel = new PHPExcel(); 
    $objWorksheet = $objPHPExcel->getActiveSheet(); 
    $objWorksheet->fromArray(
    array(
     array('', 2010, 2011, 2012), 
     array('PASS', 12, 15,  21), 
     array('FAIL', 56, 73,  86) 
    ) 
); 

    $dataSeriesLabels1 = array(
    new PHPExcel_Chart_DataSeriesValues('String', 'Worksheet!$C$1', NULL, 1), // 2011 
); 

    $xAxisTickValues1 = array(
    new PHPExcel_Chart_DataSeriesValues('String', 'Worksheet!$A$2:$A$3', NULL, 2), // Q1 to Q4 
); 

    $dataSeriesValues1 = array(
    new PHPExcel_Chart_DataSeriesValues('Number', 'Worksheet!$C$2:$C$3', NULL, 2), 
); 

    // Build the dataseries 
    $series1 = new PHPExcel_Chart_DataSeries(
    PHPExcel_Chart_DataSeries::TYPE_PIECHART,    // plotType 
    NULL,             // plotGrouping (Pie charts don't have any grouping) 
    range(0, count($dataSeriesValues1)-1),     // plotOrder 
    $dataSeriesLabels1,          // plotLabel 
    $xAxisTickValues1,          // plotCategory 
    $dataSeriesValues1          // plotValues 
); 

    // Set up a layout object for the Pie chart 
    $layout1 = new PHPExcel_Chart_Layout(); 
    /*$layout1->setShowVal(TRUE);*/ 
    $layout1->setShowCatName(TRUE); 

    // Set the series in the plot area 
    $plotArea1 = new PHPExcel_Chart_PlotArea($layout1, array($series1)); 
    // Set the chart legend 
    $legend1 = new  PHPExcel_Chart_Legend(PHPExcel_Chart_Legend::POSITION_RIGHT, NULL, false); 

    $title1 = new PHPExcel_Chart_Title('Test Pie Chart'); 


    // Create the chart 
    $chart1 = new PHPExcel_Chart(
    'chart1',  // name 
    $title1,  // title 
    $legend1,  // legend 
    $plotArea1,  // plotArea 
    true,   // plotVisibleOnly 
    0,    // displayBlanksAs 
    NULL,   // xAxisLabel 
    NULL   // yAxisLabel  - Pie charts don't have a Y-Axis 
    ); 
1

Modyfikuj swoją tablicę deklaracji jak

array(
     array('', 2010, 2011, 2012), 
     array('Q1', 12, 15,  21), 
     array('Pass or fail', 56, 73, 86) 
     ) 

. W ten sposób można ustawić wartość statyczną. Teraz, aby go wyświetlić, możesz dodać właściwość do swojego układu, aby pokazać swoją nazwę kategorii dla wykresu z ->setShowCatName(TRUE);

Powiązane problemy