我意识到这可能是我对 Dimple 系列的误解,但我不知道如何使用 getTooltipText() 来使用原始数据(即图表)中的值覆盖工具提示,而不仅仅是轴(即x、y、z)。
假设我有这样的数据:
var data = [{"project_id":"1114","project_status":"Active","request_date":"2014-05-31","project_type":"CRISPR","cost":"0","due_date":"2014-08-14","service_durations_days":"75","days_overdue":"1","active_services":""},...]
图表/坐标轴/系列的初始化如下:
var chart = new dimple.chart(svg, data);
chart.addTimeAxis("x", "request_date","%Y-%m-%d","%Y-%m-%d");
chart.addCategoryAxis("y", "project_type");
var z = chart.addMeasureAxis("z", "cost");
var s = chart.addSeries("project_status", dimple.plot.bubble);
我可以在这里调用任何东西吗:
s.getTooltipText = function(e){
console.log(e);
return ["test"];
}
那会返回 project_id、service_durations_days、days_overdue 或 active_services 以供显示?
最佳答案
您可以将它们包含在您的系列定义中并且它们变得可访问。它们不能立即访问的原因是 Dimple 将数据聚合到绘制图表所需的级别,因此如果不需要字段,它会忽略它。您可以在 addSeries 方法的第一个参数中包含额外的字段:
chart.addSeries([
"project_id",
"service_durations_days",
"days_overdue",
"active_services",
"project_status"
], dimple.plot.bubble);
这是一个从 Greg Ross 修改而来的 fiddle ,用于展示这种替代方法:http://jsfiddle.net/6n5r6vyb/3/
关于javascript - 用图表数据覆盖 D3 Dimple 工具提示,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25334677/