2016-02-26 140 views
0

我发现很多答案如何隐藏每个第n个标签,但仍然能够在工具提示中显示它。但有一个问题。如果标签非常长,那么图表会以某种方式压缩到画布的顶部。这是合乎逻辑的。但是有什么方法可以隐藏标签,仍然在工具提示中显示它们,但在计算y值时却忽略它们?这样可以从画布的顶部到底部绘制线条?隐藏x轴标签,但在chart.js中显示工具提示

谢谢你的任何建议!

+0

剥离标签的,如设置图表可以帮助之前使其空字符串? –

+0

当然,它的确如此。但是,我不知道如何在工具提示中显示它们。 – jPO

+0

可能可以使用工具提示数据创建单独的数组。或者我记得格式化工具提示。你可以在那里玩 –

回答

2

您可以扩展折线图来完成此操作。改编自Hide labels on x-axis ChartJS(这是条形图),删除了一些不必要的代码。我们所做的很简单,我们首先将标签数组设置为空白,允许初始化发生,最后循环遍历(第一个)数据集的点并将标签设置为原始标签。

Chart.types.Line.extend({ 
    name: "LineAlt", 
    initialize: function(data){ 
    var originalLabels = data.labels; 
    data.labels = data.labels.map(function() { return '' }); 

    Chart.types.Line.prototype.initialize.apply(this, arguments); 
    this.datasets[0].points.forEach(function(bar, i) { 
     bar.label = originalLabels[i]; 
    }); 
    } 
}); 

这足以说你,即使你有多个数据集的第一个数据集设置标签 - 构建multiTooltip时,标签从第一个数据集采摘。


小提琴 - http://jsfiddle.net/xjchy2dn/

+0

令人难以置信!谢谢!再一次简单:) – jPO