10

是否有使用 JqPlot 处理“无数据”的最佳方法?

假设我通过 ajax 调用使用 json 数据,最终没有数据可用,例如:

[['North'][0],['South'][0],['East'][0],['West'][0]]
4

3 回答 3

14

我总是有一个条件,我检查我的AJAX函数,它检查没有结果。然后,如果没有结果发生,我会设置一个图表,让它看起来是空的。由于这个原因var data = [[null]]应该做的,哪里data是一个参数jQuery.jqplot('chart', data, {})。的值data可能取决于图表的类型,因此我对折线图、条形图和饼图进行了测试,效果很好。

或者,您还可以隐藏图例和情节的其他部分。对我来说,只需设置data和图例就足够了。

于 2012-07-12T11:22:10.493 回答
2

var data = [null];将在控制台中触发错误并进一步停止 JS 脚本执行。更好的解决方案是使用以下内容。

var data = [''];
jQuery.jqplot('chart', data, {});

这将打印任何后续图表和/或继续 JS 脚本执行,在 FF/Chrome/IE 控制台中没有错误。:-)

于 2015-10-29T14:18:45.093 回答
2

就我而言,这与 Rahi 的回答相反(也许 null 周围缺少双括号是问题所在),这意味着我同意 Boro;

这有效:var data = [[null]]; 并且这:var data = [''];生成一个错误,无论我有多个图表还是只有一个没有数据。

我正在运行 jqPlot 1.0.9

我得到的错误是:Uncaught Error: No data specified从 jqPlot 脚本中的条件

if (0 == this.noDataIndicator.show)
                    throw new Error("No data specified");
于 2017-09-20T17:01:24.693 回答