【问题标题】:How can i modify googlechart DataView annotation from arrayToDataTable that get data from json encode?如何从 arrayToDataTable 修改从 json 编码获取数据的 googlechart DataView 注释?
【发布时间】:2020-11-07 16:13:20
【问题描述】:

我的 PHP :

$chart = array(
array('axisX'=>'0','value'=>$temp_value[0]),
array('axisX'=>'1','value'=>$temp_value[1]),
array('axisX'=>'2','value'=>$temp_value[2]),
array('axisX'=>'3','value'=>$temp_value[3]),
array('axisX'=>'4','value'=>$temp_value[4]),
array('axisX'=>'5','value'=>$temp_value[5]),
array('axisX'=>'6','value'=>$temp_value[6]),
array('axisX'=>'7','value'=>$temp_value[7]),
array('axisX'=>'8','value'=>$temp_value[8]),
array('axisX'=>'9','value'=>$temp_value[9]));

function convertDataToChartForm($chart)
{
    $newData = array();
    $firstLine = true;

    foreach ($chart as $dataRow)
    {
        if ($firstLine)
        {
            $newData[] = array_keys($dataRow);
            $firstLine = false;
        }

        $newData[] = array_values($dataRow);
    }

    return $newData;
}

这是我的剧本:

var data = google.visualization.arrayToDataTable(<?php echo json_encode(convertDataToChartForm($chart));?>);

var view = new google.visualization.DataView(data);
      view.setColumns([0, 1,
                       { calc: "stringify",
                         sourceColumn: 1,
                         type: "string",
                         role: "annotation" }]);

我想尝试实现的是我想在注释后添加“x”?例如注释输出是 9,我想把它变成“9x”。

【问题讨论】:

    标签: javascript php json annotations google-visualization


    【解决方案1】:

    而不是使用内置的"stringify"函数,
    您可以使用自己的自定义函数。

    calc 函数将接收两个参数,
    数据表和行索引

    var view = new google.visualization.DataView(data);
    view.setColumns([0, 1, {
      calc: function (dt, row) {
        return dt.getFormattedValue(row, 1) + 'x';
      },
      type: "string",
      role: "annotation"
    }]);
    

    【讨论】:

    • 这个问题好运吗?请您使用投票按钮附近的复选标记将答案标记为已接受吗?这将允许我将其他问题标记为与此问题重复...
    猜你喜欢
    • 1970-01-01
    • 2012-02-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-07-03
    相关资源
    最近更新 更多