【发布时间】:2017-03-08 07:25:39
【问题描述】:
我正在尝试使用 Google 注释图表绘制一些数据。当我在 javascript 中硬编码我的数据时,我得到了正确的图表
function drawChart() {
var data = new google.visualization.DataTable();
data.addColumn('date', 'Date');
data.addColumn('number','Level');
data.addColumn('string', 'Activity');
data.addRows([
[new Date(2017,1,14,0, 1), 88, undefined],
[new Date(2017,1,14,0, 16), 83, undefined],
[new Date(2017,1,14,0, 31), 78, undefined],
...
[new Date(2017,1,14,23, 46), 74, undefined]
]);
var chart = new google.visualization.AnnotationChart(document.getElementById('chart_div'));
var options = {
displayAnnotations: true
};
chart.draw(data, options);
}
现在我正在尝试用 jstl forEach 替换 data.addrows 部分,以遍历具有 readingTime、readingLevel 和 readingAnnotation 作为参数的 java 对象“Readings”中的数据 - 但我没有得到我的图表 - 只是得到一个空白页。
function drawChart() {
var data = new google.visualization.DataTable();
data.addColumn('date', 'Date');
data.addColumn('number','Level');
data.addColumn('string', 'Activity');
<c:forEach items="${Readings}" var="entry">
data.addRow(${entry.readingTime}, ${entry.readingValue}, ${entry.readingAnnotation});
</c:forEach>
var chart = new google.visualization.AnnotationChart(document.getElementById('chart_div'));
var options = {
displayAnnotations: true
};
chart.draw(data, options);
在另一个 servlet 中,我使用此循环来简单地在浏览器中打印数据值并且效果很好 - 因此循环能够遍历“读数”列表并读取参数,但它不会像创建数据集一样对值进行硬编码。
对我需要做些什么来完成这项工作有什么想法吗?
【问题讨论】: