以编程方式突出显示区域 - Chart.js
Highlight area programmatically - Chart.js
我正在使用 Chart.js(圆环图),我想问一下是否可以选择以编程方式突出显示区域?我的意思是 - 当我点击一个按钮时,特定区域将突出显示。
感谢您的回复。
只需遍历甜甜圈段,根据标签进行匹配并交换/恢复填充颜色。
function highlight(label) {
myDoughnutChart.segments.forEach(function (segment, i) {
if (segment.label == label) {
if (segment.fillColor == segment.highlightColor)
segment.restore(["fillColor"]);
else
segment.fillColor = segment.highlightColor;
myDoughnutChart.render();
}
})
}
Fiddle - http://jsfiddle.net/35of1Lzg/
我已经通过设置 tooltipEvents = [] 禁用了工具提示和工具提示突出显示,但如果你想要它们回来,你可以随时将其从选项中删除,但是悬停/鼠标移开和单击按钮会做同样的事情.
要在突出显示时也弹出工具提示,请使用此
function highlight(label) {
myDoughnutChart.segments.forEach(function (segment) {
if (segment.label == label) {
if (segment.fillColor == segment.highlightColor)
segment.restore(["fillColor"]);
else
segment.fillColor = segment.highlightColor;
myDoughnutChart.render()
}
})
var activeSegements = [];
myDoughnutChart.segments.forEach(function (segment) {
if (segment.fillColor === segment.highlightColor) {
activeSegements.push(segment)
}
});
myDoughnutChart.showTooltip(activeSegements, true)
}
仅供参考,小提琴不再有效,您需要替换指向 Chart.min.js 的链接
我用这些来让它们工作:https://cdnjs.cloudflare.com/ajax/libs/Chart.js/1.1.1/Chart.js
我正在使用 Chart.js(圆环图),我想问一下是否可以选择以编程方式突出显示区域?我的意思是 - 当我点击一个按钮时,特定区域将突出显示。
感谢您的回复。
只需遍历甜甜圈段,根据标签进行匹配并交换/恢复填充颜色。
function highlight(label) {
myDoughnutChart.segments.forEach(function (segment, i) {
if (segment.label == label) {
if (segment.fillColor == segment.highlightColor)
segment.restore(["fillColor"]);
else
segment.fillColor = segment.highlightColor;
myDoughnutChart.render();
}
})
}
Fiddle - http://jsfiddle.net/35of1Lzg/
我已经通过设置 tooltipEvents = [] 禁用了工具提示和工具提示突出显示,但如果你想要它们回来,你可以随时将其从选项中删除,但是悬停/鼠标移开和单击按钮会做同样的事情.
要在突出显示时也弹出工具提示,请使用此
function highlight(label) {
myDoughnutChart.segments.forEach(function (segment) {
if (segment.label == label) {
if (segment.fillColor == segment.highlightColor)
segment.restore(["fillColor"]);
else
segment.fillColor = segment.highlightColor;
myDoughnutChart.render()
}
})
var activeSegements = [];
myDoughnutChart.segments.forEach(function (segment) {
if (segment.fillColor === segment.highlightColor) {
activeSegements.push(segment)
}
});
myDoughnutChart.showTooltip(activeSegements, true)
}
仅供参考,小提琴不再有效,您需要替换指向 Chart.min.js 的链接 我用这些来让它们工作:https://cdnjs.cloudflare.com/ajax/libs/Chart.js/1.1.1/Chart.js