Чтение https://www.chartjs.org/docs/latest/charts/line.html#general, похоже, нет возможности добавить постоянно видимую метку, связанную с каждой точкой данных.
Например, в скрипте ниже значения данных:
[{x: 1, y: 2}, {x: 2, y: 4}, {x: 3, y: 8},{x: 4, y: 16}]
Может составлять диаграмму. js отображать текст, связанный с каждой точкой, которая постоянно видна?
Таким образом, вместо структуры данных выше используйте:
[{x: 1, y: 2, text:'Test1'}, {x: 2, y: 4, text:'Test2'}, {x: 3, y: 8, text:'Test3'},{x: 4, y: 16, text:'Test4'}]
атрибут text
содержит текстовые данные, которые будут отображаться для данной точки.
Fiddle: https://jsfiddle.net/adrianfiddleuser/0j6L2mag/3/
Fiddle sr c:
HTML:
<script src="https://cdnjs.cloudflare.com/ajax/libs/Chart.js/2.7.2/Chart.min.js"></script>
<canvas id="myChart"></canvas>
Javascript:
var ctx = document.getElementById("myChart");
var myChart = new Chart(ctx, {
type: 'scatter',
data: {
datasets: [
{
label: 'test',
data: [{x: 1, y: 2}, {x: 2, y: 4}, {x: 3, y: 8},{x: 4, y: 16}],
showLine: true,
fill: false,
borderColor: 'rgba(0, 200, 0, 1)'
}
]
},
options: {
tooltips: {
mode: 'index',
intersect: false,
},
hover: {
mode: 'nearest',
intersect: true
},
scales: {
yAxes: [{
ticks: {
beginAtZero:true
}
}]
},
}
});
Обновление:
Этот код:
var ctx = document.getElementById("myChart");
var myChart = new Chart(ctx, {
type: 'line',
data: {
labels: ["T", "A", "s" , "sdfs"],
datasets: [
{
label: 'test',
data: [{x: 1, y: 2}, {x: 2, y: 4}, {x: 3, y: 8},{x: 4, y: 16}],
showLine: true,
fill: false,
borderColor: 'rgba(0, 200, 0, 1)'
}
]
},
options: {
tooltips: {
mode: 'index',
intersect: false,
},
hover: {
mode: 'nearest',
intersect: true
},
scales: {
yAxes: [{
ticks: {
beginAtZero:true
}
}]
},
}
});
Достигает желаемого поведение частично. Могут ли всплывающие подсказки отображаться постоянно?
Обновленная скрипка: https://jsfiddle.net/adrianfiddleuser/0j6L2mag/14/