【发布时间】:2021-07-26 18:57:43
【问题描述】:
我正在使用 Google 图表创建月度销售图表。即使销售不存在,我也想在图表中显示所有月份。例如,如果 2 月份没有销售,那么它应该显示 0 的值
基本上,月份仍应显示,但值应为零。
这是我目前取得的成就
invoice_order 表
order_id | order_date | order_total_amount
1 | 2021-01-01 | 1000
2 | 2021-03-01 | 2000
上表将返回 1 月和 3 月的销售额并在图表中显示这些月份,但我还想在图表中显示值为 0 的 2 月。基本上,无论销售情况如何,所有月份都需要显示在图表中。我希望你有一个想法!
<script type="text/javascript">
google.charts.load('current', {'packages':['bar']});
google.charts.setOnLoadCallback(drawChart);
function drawChart() {
var data = google.visualization.arrayToDataTable([
['Monthly', 'Sales'],
<?php
$select_sale = "select date_format(order_date,'%M'), sum(order_total_amount) from invoice_order group by year(order_date),month(order_date) order by year(order_date),month(order_date)";
$select_sale_query = mysqli_query($connection,$select_sale);
while($sale_result = mysqli_fetch_assoc($select_sale_query)) { ?>
['<?php echo $sale_result["date_format(order_date,'%M')"] ?>','<?php echo $sale_result["sum(order_total_amount)"] ?>'],
<?php } ?>
]);
var options = {
chart: {}
};
var chart = new google.charts.Bar(document.getElementById('chart_div'));
chart.draw(data, google.charts.Bar.convertOptions(options));
}
</script>
【问题讨论】:
标签: javascript php mysql google-visualization