You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Google饼图标题显示但图表不渲染,寻求技术解决

排查Google饼图无法渲染的问题

看起来你的代码逻辑框架是对的,但图表不渲染大概率是数据格式错误或者容器/加载配置问题,我帮你梳理几个关键排查点:

1. 修复数据类型错误(最可能的原因)

Google饼图要求第二个字段是纯数值类型,但你现在用引号把数值包裹成了字符串:

echo "['Auditing','" . $row[0] . "'],['Assests','" . $row[1] . "'], ...";

这样生成的JS数据会是['Auditing', '123'],字符串型的数值无法被图表引擎识别。你需要去掉数值的引号,改成:

echo "['Auditing', " . $row[0] . "],['Assests', " . $row[1] . "], ['Advertisements', " . $row[2] . "],['Bank Charges', " . $row[3] . "], ['Driver Bata', " . $row[4] . "],['Electricity'," . $row[5] . "],['Food'," . $row[6] . "],['Maintenance'," . $row[7] . "], ['Printing'," . $row[8] . "],['Salary'," . $row[9] . "], ['Office Supplies'," . $row[10] . "],['Taxes'," . $row[11] . "],['Telephone and Internet'," . $row[12] . "],['Petrol for Generator'," . $row[13] . "],['Others'," . $row[14] . "]";

这样生成的数值是纯数字格式(比如['Auditing', 123]),图表才能正确解析并渲染。

2. 确保容器有明确尺寸

你的#pieWeekdiv没有设置宽高,Google Charts需要容器有固定尺寸才能正常渲染,给div加上样式:

<div id="pieWeek" style="width: 800px; height: 500px;"></div>

3. 清理Google Charts加载冗余代码

你同时引入了已废弃的jsapi和官方推荐的loader.js,这可能导致加载冲突,只保留loader.js即可,删除这一行:

<script type="text/javascript" src="https://www.google.com/jsapi"></script>

4. 验证查询数据是否有效

先确认PHP查询到的数据是否符合预期,在PHP代码里加入调试代码:

$row=mysqli_fetch_array($resultPieWeek);
var_dump($row); // 查看是否有15个有效数值,是否存在NULL或0的情况

如果所有值都是NULL或者0,图表可能因为没有有效数据而不显示,需要检查你的WHERE date between date_sub(now(),INTERVAL 1 WEEK) and now()条件是否匹配数据库中日期字段的格式。

5. 查看浏览器控制台报错

打开浏览器的开发者工具(按F12),切换到「Console」标签,查看是否有JS报错信息(比如数据格式错误、资源加载失败等),这是快速定位前端问题的核心手段。

按照以上步骤调整后,应该能解决图表不渲染的问题。

内容的提问来源于stack exchange,提问作者Stat-Geek

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.29 09:05:20