Горизонтальный диапазон рабочего листа до DataSeriesValues ​​в диаграмме PhpSpreadsheet - PullRequest
0 голосов
/ 01 мая 2020

Я хочу получить горизонтальный диапазон данных ячейки в DataSeriesValues ​​в PHPexcel / PhpSpreadsheet Chart с использованием Laravel Excel.

Мой рабочий код для вертикального диапазона ячеек:

public function charts()
{
    $label      = [new DataSeriesValues('String', 'Worksheet!$B$1', null, 1)];
    $categories = [new DataSeriesValues('String', 'Worksheet!$B$4:$B$12', null, 4)];
    $values     = [new DataSeriesValues('Number', 'Worksheet!$C$4:$C$12', null, 4)];

    $series = new DataSeries(DataSeries::TYPE_BARCHART, DataSeries::GROUPING_STANDARD,
        range(0, count($values) - 1), $label, $categories, $values);
    $plot   = new PlotArea(null, [$series]);

    $legend = new Legend();
    $chart  = new Chart('chart 1 zz', new Title('chart 1'), $legend, $plot);

    $chart->setTopLeftPosition('G1');
    $chart->setBottomRightPosition('K5');
 }

Я пробовал это код для горизонтального диапазона, но он говорит No Data на графике

    $label      = [new DataSeriesValues('String', 'Worksheet!$B$1', null, 1)];
    $categories = [new DataSeriesValues('String', 'Worksheet!$B$4:$AG$4', null, 4)];
    $values     = [new DataSeriesValues('Number', 'Worksheet!$B$5:$AG$5', null, 4)];

, и я попробовал ниже код, тогда значения верны, но возвращают только первые категории

    $i    = "A";
    $label = [];
    $values = [];
    $categories = [];
    foreach ($this->questions as $question) {
        $i++;
        $label[]      = new DataSeriesValues('String', 'Worksheet!$B$1', null, 1);
        $categories[] = new DataSeriesValues('String', 'Worksheet!$'.$i.'$4', null, 4);
        $values[]     = new DataSeriesValues('Number', 'Worksheet!$'.$i.'$5', null, 4);
    }

ниже изображение является последний результат диаграммы

fail horizontal

И у меня также есть другие вопросы:

  • Что такое 4 / pointCount в последние аргументы DataSeriesValues Я пытался изменить на другое значение, но без разницы
  • Что такое метка? потому что он не отображается на графике.

Заранее спасибо

...