Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 在谷歌图表中,条形图的颜色不同_Javascript_Django_Charts_Google Visualization_Bar Chart - Fatal编程技术网

Javascript 在谷歌图表中,条形图的颜色不同

Javascript 在谷歌图表中,条形图的颜色不同,javascript,django,charts,google-visualization,bar-chart,Javascript,Django,Charts,Google Visualization,Bar Chart,我正在尝试使用谷歌图表制作一个条形图,我想用不同的颜色来绘制条形图 从谷歌图表的文档中,我以以下格式从后端发送数据: { "cols": [ {"id":"","label":"Topping","pattern":"","type":"string"}, {"id":"","label":"Slices","pattern":"","type":"number"} ], "rows": [ {"c":[{"v":"Mushroom

我正在尝试使用谷歌图表制作一个条形图,我想用不同的颜色来绘制条形图

从谷歌图表的文档中,我以以下格式从后端发送数据:

    {
    "cols": [
    {"id":"","label":"Topping","pattern":"","type":"string"},
    {"id":"","label":"Slices","pattern":"","type":"number"}
      ],
  "rows": [
        {"c":[{"v":"Mushrooms"},{"v":3}]},
        {"c":[{"v":"Onions"},{"v":1}]},
        {"c":[{"v":"Olives"},{"v":1}]},
        {"c":[{"v":"Zucchini"},{"v":1}]},
        {"c":[{"v":"Pepperoni"},{"v":2}]}
      ]
    }
我使用ajax调用从django后端获取数据,代码如下所示-

var jsonData = $.ajax({
      url: $('#barchart_values').attr('data-actionurl'),
      dataType: "json",
      async: false
    }).responseText;
我知道我可以使用options参数设置不同的颜色,但当我这样做时,只有列表的第一种颜色应用于所有的条

var options = {
      title: "Vegetables",
      legend: { position: 'top' },
      colors: ['green', 'red', 'blue']
    };
    var data = new google.visualization.DataTable(jsonData);
    var chart = new google.visualization.BarChart(document.getElementById('barchart_values'));
    chart.draw(data, options);
在上面的代码中,绿色应用于所有条

我想从后端发送颜色,我想我可以使用“p”属性,但我不知道如何确切地做到这一点


我想知道是否有某种方法可以将颜色包含在从后端发送的json数据中。还有,为什么只有选项的颜色列表中提供的第一种颜色应用于所有栏?您可以使用样式列角色

google.charts.load('current'{
软件包:['corechart']
}).然后(函数(){
var chart=new google.visualization.BarChart(document.getElementById('chart-bar');
chart.draw(新的google.visualization.DataTable({
“科尔斯”:[
{“标签”:“顶部”、“图案”:“类型”:“字符串”},
{“标签”:“切片”、“图案”:“类型”:“编号”},
{“角色”:“样式”,“类型”:“字符串”}
],
“行”:[
{“c”:[{“v”:“蘑菇”},{“v”:3},{“v”:“绿色”}]},
{“c”:[{“v”:“洋葱”},{“v”:1},{“v”:“红色”}]},
{“c”:[{“v”:“橄榄”},{“v”:1},{“v”:“蓝色”}]},
{“c”:[{“v”:“西葫芦”},{“v”:1},{“v”:“紫色”}]},
{“c”:[{“v”:“辣味香肠”},{“v”:2},{“v”:“橙色”}]}
]
}));
});


知道我们将如何在材料条形图上做类似的事情吗?检查--参见图表4…因此我们必须在数据表中添加一个空值的间隔列?不是必需的,只是在条形图之间创建空间--取出间隔,看看我的意思。。