![](/img/trans.png)
[英]Where to add and register the custom attributes in flot-pie chart js?
[英]Adding custom attributes to flot data
如果我可以传递一些我想在触发plotclick
事件时访问的补充数据,那么当我将数据传递到flot时非常方便。
这是一些标准数据;
[{label: 'first', data: 5, color: '#123'},
{ label: 'first', data: 10, color: '#456'}]
我希望能够做类似的事情;
[{label: 'first', data: 5, color: '#123', my_custom_attribute: 'some data'},
{ label: 'first', data: 10, color: '#456', my_custom_attribute: 'some more data'}]
所以我可以在我的plotclick
事件中做到;
$('chart').bind('plotclick', function(event, pos, item) {
console.log(item.series.my_custom_attribute) //Or something to that effect
});
我试过插入上面的内容并查看我的plotclick
事件中的item
的返回内容,它似乎没有将my_custom_attribute
存储在任何地方。
我已阅读https://github.com/flot/flot/blob/master/API.md上的文档,但无法获得任何相关信息。
我搜索谷歌和这里的答案,找不到符合我需要的。
感谢Khawer Zeshan提供的解决方案,这对我来说仍然不起作用;
这是我传递的数据;
[{breakdown: "test", color: "#00A4D3", data: 1.5, label: "History"},
{breakdown: "test", color: "#1464F6", data: 0, label: "Geography"}]
但breakdown
属性不会出现在item
的输出中。
关于图表的其他所有内容似乎都有效。
你说对了。 您可以根据自己的喜好使用自定义数据参数
data = [{ data:data1, label:"fixed", lines:{show:true}, my_custom_attribute: 'somedata'}];
您可以按如下方式获取自定义数据
$("#placeholder").bind("plotclick", function (event, pos, item) {
if (item) {
alert(item.series.my_custom_attribute);
}
});
试试这个
如果通过初始化图表时使用的原始data
变量查找自定义数据。 数据仍将存在。 由于某种原因,无法通过item
直接访问数据...它似乎被删除。
var data = [
{ label: "Series1", data: [[1,1]], myData: "test 1"},
{ label: "Series2", data: [[1,1]], myData: "test 2"},
{ label: "Series3", data: [[1,1]], myData: "test 3"},
{ label: "Series4", data: [[1,1]], myData: "test 4"},
{ label: "Series5", data: [[1,1]], myData: "test 5"},
{ label: "Series6", data: [[1,5]], myData: "test 6"}
];
$.plot($("#placeholder"), data, {
series: {
pie: {
show: true
}
},
grid: {
hoverable: true,
clickable: true
}
});
$("#placeholder").bind("plotclick", function (event, pos, item) {
if (item) {
console.log(data[item.seriesIndex]);
}
});
希望有所帮助!
的console.log(数据[item.seriesIndex]);
这个对我有用...
对于较新版本(0.8),自定义变量可直接在系列级别中使用
的console.log(item.series.my_custom_attribute);
但对于较小版本的seriesIndex方式应该工作..
想谢谢@Milk Man
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.