【发布时间】:2017-08-24 23:34:15
【问题描述】:
我正在尝试创建一个与其“图例”相比具有不同内部标签的图表。当图例太长时 Chart.js 会缩小,这会将我的图表推到非常小的尺寸。我拿起标签,在一定长度后将它们切掉,这就是新标签。但是我不知道如何有两个单独的标签,一个是 Legend 是缩短版本,一个是正常长度。这是我的代码:
function truncLabel(str, maxwidth){
if(str.length > maxwidth) {
str = str.substring(0,24)+"...";
}
return str;
}
for (var i = 0 ; i < labels2Length; i++){
trunc_labels2[i] = formatLabel(labels2[i],20);
}
new Chart(document.getElementById("xxx"), {
type: 'doughnut',
data: {
labels: trunc_labels2,
datasets: [
{
label: labels2,
backgroundColor: ["#3e95cd", "#8e5ea2","#3cba9f","#e8c3b9","#c45850","#5e5ba3","#9fe7aa","#1a5ba3","#6cba1f","#cacf4f"],
data:data2
}
]} //More code follows but isnt needed here
Labels2 正确返回完整字符串,而 trunc_labels2 正确返回截断字符串。其他类型的图表具有此功能(即条形图、线形图等),但甜甜圈似乎没有? 谢谢
【问题讨论】:
-
所以您想在图例中添加标签并在悬停到图表部分后弹出?
-
@SirWojtek 我希望图例是截断版本,但悬停在完整标签上。即图例 = thisismyreallylon... tooltop = thisismyreallylongstring
-
@ℊααnd 这“不应该”成为一个问题,因为没有一个标签会达到那个长度。介意告诉我你是如何将两者分开的吗?
标签: javascript charts chart.js pie-chart