我对Google图表组合图有一个奇怪的问题。我在一个轴上有€值,在另一轴上有%。一切正常,直到%值超过100为止。默认情况下,图形按如下方式划分:working graph
但是当值超过100时,它将更改为:non working graph
这是我的图形生成的代码
<script type="text/javascript">
google.charts.load('current', {'packages':['corechart']});
google.charts.setOnLoadCallback(drawVisualization);
function drawVisualization() {
// Some raw data (not necessarily accurate)
var data = new google.visualization.DataTable(<?php echo $jsonTable; ?>);
var options = {
vAxis: {title: 'Value (€)'},
hAxis: {title: 'Audit Date'},
legend:{position: 'top', maxLines:2},
seriesType: 'bars',
series: {
3: {type: 'line', targetAxisIndex:0},
4: {type: 'line', targetAxisIndex:1}
},
vAxes: {
1: {
title:'Gross Profit %',
textStyle: {color: 'green'}
}
}};
var chart = new google.visualization.ComboChart(document.getElementById('chart_div'));
chart.draw(data, options);
}
</script>
并使用数据库中的结果生成数组,然后将其推入数组,然后将其转换为json
$temp[] = array('v' => (float) $wastage);
$temp[] = array('v' => (float) $purchases);
$temp[] = array('v' => (float) $sales);
$temp[] = array('v' => (float) $labour);
$temp[] = array('v' => (float) $gp_per);
$rows[] = array('c' => $temp);
$table['rows'] = $rows;
$jsonTable = json_encode($table);
似乎将值100转换为0.1,但是为什么会发生这种情况以及如何防止呢?
答案 0 :(得分:0)
我想图表会因将百分比值增加到100以上而导致错误,从而导致图表空白。
您可以尝试为此添加最大值100,因为这是一个百分比。这可以通过添加垂直轴来完成。
vAxes: {
1: {
title:'Gross Profit %',
textStyle: {color: 'green'},
maxValue: 100
}
}};
有关诸如此类的配置选项列表,您可以在此处查看页面底部:https://developers.google.com/chart/interactive/docs/gallery/linechart