#angular #ionic-framework #chart.js
Вопрос:
Я пытаюсь сейчас chart.js version 3.6
, но у меня проблема, что метка набора данных не отображается.
Я попробовал это, но безрезультатно
const labels: string[] = [];
const sold: number[] = [];
const released: number[] = [];
for (const d of r.data) {
labels.push(d.date);
sold.push(d.sold);
released.push(d.released);
}
const quarterChart = new Chart('quarterGraphCanvas', {
type: 'line',
data: {
labels,
datasets: [
{
label: 'Sold Amount',
data: sold,
fill: false,
borderColor: 'red',
},
{
label: 'Released Amount',
data: released,
fill: false,
borderColor: 'blue',
},
],
},
options: {
plugins: {
tooltip: {
mode: 'index',
intersect: false,
},
},
scales: {
y: {
beginAtZero: true,
},
},
},
});
quarterChart.render();
Этикетка Sold Amount
и Released Amount
не отображается.
Какие варианты я пропустил?
Комментарии:
1. Что вы имеете в виду, когда они не отображаются, где они не отображаются, потому что они используются в нескольких местах
2. Диаграмма отображается без проблем, когда я пытаюсь использовать вашу конфигурацию, chartjs.org/docs/latest/charts/line.html . Пожалуйста, помогите добавить данные для воспроизведения.
3. @LeeLenalee Я имею в виду, что метки набора данных не отображаются. В версии 2 эти метки отображаются вверху.
4. @huy данные-это просто простой объект, с a
date string
и номерами для другого свойстваsold
иreleased
5. Кажется, все работает нормально, так что единственное, о чем я могу думать, это то, что вы где-то устанавливаете значение легенды по умолчанию в значение false: jsfiddle.net/Leelenaleee/ve02q7ja
Ответ №1:
Проблема заключалась в chart.js интеграция, я выбираю только несколько контроллеров, которые, как я думал, мне только нужны, и придумываю это.
Chart.register(
LinearScale,
CategoryScale,
LineElement,
LineController,
PointElement
);
И был исправлен с помощью
Chart.register(...regiserables);
Но я договорился с
import Chart from 'chart.js/auto';
И полностью удалите Chart.register
.