【发布时间】:2017-03-15 17:24:50
【问题描述】:
我设计了一个控制台应用程序。用户可以创建报告小部件(也可以选择图形类型、线、饼图等)并链接到其他 api 函数。然后系统将rest api数据(我不知道数据字段,用户在屏幕上输入名称)与报告小部件和相关图表绑定。
我将 D3.js 用于实时仪表板(包含报告小部件)。但是 D3.js 对于动态报告和动态 ajax 数据来说不是很好的选择。由于 D3.js 的实现因图表而异,因此它不像 highcharts、echarts 那样对开发人员友好。
但是highcharts、echarts等图表的字段名是不可配置的。在Kendo 中可以这样做:
series: [
{ field: "price" }
]
有没有办法在 HighCharts 或 eCharts 中做到这一点。 要么 您能否推荐任何其他图表库(更喜欢免费/开源)?
更新: 我不再使用 eCharts。 C3.js 更稳定且易于使用。 C3.js 有同样的问题,但现在我准备了自定义数据数组并且它正在工作。
chart.graph.load({
columns: [
GetTextData(serieData, "x"),
SerializeDataWithSerieName("blabla", serieData)
]
});
....
function GetTextData(data, textToInsertStart) {
var result = [];
if (textToInsertStart)
result.push(textToInsertStart);
for (var i = 0; i < data.length; i++) {
result.push(data[i][MyTextFieldName]);
}
return result;
}
....
function SerializeDataWithSerieName(serieName, data) {
var result = [];
result.push(serieName);
for (var i = 0; i < data.length; i++) {
result.push(data[i][MyDataFieldName]);
}
return result;
}
【问题讨论】:
-
不能手动绑定数据字段并在Highcharts/eCharts中使用有效的配置对象吗?
-
你能解释更多吗?
-
收到json后,将其解析为图表库可以理解的适当配置对象。如何解析 json 将取决于 json 结构以及您希望如何可视化数据。
-
需要有关该字段的用途的更多信息。
-
一个数据字段。它可以是计数、平均、价格等...
标签: javascript d3.js highcharts c3.js echarts