chart.js 2.0为数据集添加了新属性
chart.js 2.0 add new property to dataset
我需要向数据集/标签添加一个属性,以便在单击时识别它。我试过这样的东西:
Chart.controllers.customBar = Chart.controllers.bar.extend({
code: null
});
它几乎可以工作,因为我可以看到新的属性"代码",数据与之相关,图表背景可见但为空,我的意思是数据集中没有可见的数据。
这是我的初始化:
var ctx = document.getElementById("roads-chart").getContext("2d");
window.roadsBar = new Chart(ctx, {
type: 'bar',
data: roadsChartData,
options: {
title: {
display: true,
text: "Stan dróg"
},
tooltips: {
mode: 'label'
},
responsive: true,
scales: {
xAxes: [{
stacked: true,
}],
yAxes: [{
stacked: true
}]
},
onClick: function(e, d) {
console.log(d);
}
}
});
问题是,我感觉不到Chart.js,有人能帮我处理它并展示一个扩展如何工作的例子吗?:)
感谢
虽然您可以扩展图表来实现这一点,但如果您不介意依赖内部属性(在chart.js的后续版本中可能会发生变化),您可以使用_datasetIndex
和_index
属性从图表配置中检索额外的属性,如
options: {
onClick: function(e, d) {
if (d.length > 0) {
console.log(this.config.data.datasets[d[0]._datasetIndex].code[d[0]._index]);
}
}
...
和
...
datasets: [{
code: ['a', 'b', 'c', 'd', 'e', 'f', 'g'],
...
Fiddle-http://jsfiddle.net/55cdvb20/
相关文章:
- 一个javascript类,它接受JSON对象并将其转换为属性属性
- 添加新元素属性
- 如何通过MongoDB驱动程序(node.js)将属性(属性名称是可变的)添加到对象中
- Javascript:属性描述符和内置属性属性之间的关系是什么
- 为什么画布中以前的圆圈的属性被较新的属性替换
- 如何在窗口打开后使用 javascript 修改浏览器属性/属性
- JS:理解可写为 Object 属性属性
- 如何获取所有以某物开头的HTML属性(属性名称,*不是*它们的值!
- 在 JSON.parse() 之后保留属性属性(可写、可配置)
- 检查对 css 属性属性的支持
- 在AngularJS中创建新资源后,无法获取新对象属性
- 如何在javascript中将属性从父属性属性赋予子属性?(OOP)
- AngularJS没有给对象添加新的属性
- 如何在上传文件后为文件对象添加新的属性
- 转换JSON数组的对象,从两个属性值创建新的属性
- 我如何在JavaScript中添加新的属性到JSON字符串
- 如何在javascript的对象中添加一个新的属性
- js树形图:将新旧属性绑定到SVG元素
- 复制Javascript对象到另一个对象,不创建新的属性
- 将对象属性复制到新对象属性 - 而不是通过引用