1 回答

TA贡献1873条经验 获得超9个赞
建议使用图表包装器
类来绘制图表。
谷歌图表也有一个表格图表,所以你可以使用它,而不是手动构建表格。
表格图表会生成一个普通的 html 表格,因此您可以应用当前拥有的任何样式。
加上它有内置的排序...
首先,将 和 包添加到 load 语句。'controls''table'
google.charts.load('current', {
packages: ['controls', 'line', 'table']
}).then(function () {
document.getElementById('get').addEventListener('click', getData);
});
还建议使用load语句返回的承诺,
以确保Google图表已加载,在分配点击事件之前,请参阅上文...
接下来,图表包装器有一个属性。
这允许您直接在图表上应用视图。
您可以使用它来控制图表中包含数据表中的哪些列...view
var chartTemp = new google.visualization.ChartWrapper({
chartType: 'Line',
containerId: 'temperature_data',
dataTable: data,
options: {
chart: {
title: 'Temperature',
subtitle: ''
},
height: 300
},
view: {
columns: [0, 1] // <-- include x-axis and temperature columns
}
});
chartTemp.draw();
有关示例,请参阅以下工作片段...
google.charts.load('current', {
packages: ['controls', 'line', 'table']
}).then(getData);
function getData() {
var data = new google.visualization.DataTable();
data.addColumn('string', 'date');
data.addColumn('number', 'temperature');
data.addColumn('number', 'pressure');
data.addColumn('number', 'rpm');
for (var i = 0; i < 12; i++) {
data.addRow([(i + 1) + '/2020', (5 * i), (10 * i), (15 * i)]);
}
var chartTemp = new google.visualization.ChartWrapper({
chartType: 'Line',
containerId: 'temperature_data',
dataTable: data,
options: {
chart: {
title: 'Temperature',
subtitle: ''
},
height: 300
},
view: {
columns: [0, 1]
}
});
chartTemp.draw();
var chartPres = new google.visualization.ChartWrapper({
chartType: 'Line',
containerId: 'pressure_data',
dataTable: data,
options: {
chart: {
title: 'Pressure',
subtitle: ''
},
height: 300
},
view: {
columns: [0, 2]
}
});
chartPres.draw();
var chartRPM = new google.visualization.ChartWrapper({
chartType: 'Line',
containerId: 'rpm_data',
dataTable: data,
options: {
chart: {
title: 'RPM',
subtitle: ''
},
height: 300
},
view: {
columns: [0, 3]
}
});
chartRPM.draw();
var chartTable = new google.visualization.ChartWrapper({
chartType: 'Table',
containerId: 'table_data',
dataTable: data,
options: {}
});
chartTable.draw();
}
<script src="https://www.gstatic.com/charts/loader.js"></script>
<div id="dashboard">
<div id="temperature_data"></div>
<div id="pressure_data"></div>
<div id="rpm_data"></div>
<div id="table_data"></div>
</div>
编辑
表格图表应使用元素,类似于其他图表。<div>
尝试替换以下内容...
<table>
<thead>
<tr>
<th>Date</th>
<th>Temperature</th>
<th>Pressure</th>
<th>RPM</th>
</tr>
</thead>
<tbody id="table_data">
<tr>
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
<button id="get">GET</button>
</tbody>
</table>
跟。。。
<div id="table_data"></div>
<button id="get">GET</button>
至于样式,不确定它们是如何应用的。
如果您在 元素上使用 id...<tbody id="table_data">
#table_data {
/* styles */
}
然后替换为...
#table_data tbody {
/* styles */
}
添加回答
举报