隐藏折线图上的元素文本,因为它与折线重叠

时间:2020-07-03 08:50:49

标签: javascript chart.js

我在尝试查找如何隐藏元素值时遇到麻烦,因此它们不会显示在折线图本身上。顺便说一下,我正在使用最新的2.9.3版本。

它会产生重叠效果,就像您看到的那样。

任何想法或文档中的位置(为此花费了很多时间,但没有弄清楚如何实现)。在条形图中,默认情况下不显示元素值。在“行”示例(https://www.chartjs.org/docs/latest/charts/line.html)中,它没有出现。我尝试复制该示例中使用的脚本,但是该值继续出现在行中。

先谢谢了。我相信更改必须超级简单,但不能做到。

enter image description here

编辑(添加了示例代码)

let daysChartCtx = document.getElementById(chartDataCanvasId);
let daysChart = new Chart(daysChartCtx, {
    type: 'line',
    data: {
            labels: ["2 Jul","3 Jul"],
            datasets: [{
                data: [17,3],
                backgroundColor: "#f7da4799",
                borderColor: "#c9a804",
                borderWidth: 2
            }]
    },
    options: {
        legend: {
            display: false
        }
    }
});

1 个答案:

答案 0 :(得分:2)

Chart.js默认情况下不在数据点顶部显示值。该问题必须与chartjs-plugin-datalabels或您在HTML页面上导入的其他脚本库有关。

<script src="https://cdn.jsdelivr.net/npm/chartjs-plugin-datalabels@0.7.0"></script>

只需将其删除,您将不会再在数据点上方看到这些值。

更新

chartjs-plugin-datalabels documentation

此插件在全局范围内进行注册,这意味着一旦导入,所有图表都将显示标签。如果您只想为几个图表启用它,则首先需要在全局范围内取消注册:

Chart.plugins.unregister(ChartDataLabels);

然后,您只能为特定图表启用该插件:

var chart = new Chart(ctx, {
    plugins: [ChartDataLabels],
    options: {
        // ...
    }
})
相关问题