Вы должны указать тип данных, который вы использовали в своей шкале.
Например:
если вы используете объект Date для одной из осей, которые вы хотите панорамировать или масштабировать, это может быть полезно для вас:
import { Chart } from 'chart.js';
import 'chartjs-plugin-zoom';
...
let date_list=["2019-08-09","2019-08-10","2019-08-11","2019-08-12","2019-08-13","2019-08-14"]
let value_list=[1000,2000,3000,2500,3000,5000]
let start_date = new Date(date_list[0]);
let end_date = new Date(date_list[date_list.length-1]);
let range_min = new Date(date_list[0]); //start date
range_min.setDate(range_min.getDate()-10);
let range_max = new Date(date_list[date_list.length-1]); //end date
range_max.setDate(range_max.getDate()+10);
this.chart = new Chart(this.my_chart.nativeElement, {
type: 'bar',
data: {
labels: date_list,
datasets: [
{
data: value_list,
}
]
},
options: {
responsive: true,
scales:{
yAxes: [{
type: 'linear',
ticks: {
beginAtZero: true,
}
},
],
xAxes: [{
distribution: 'linear',
type: "time",
time: {
min: start_date.toDateString(),
max: end_date.toDateString(),
unit: "day",
stepSize: "1",
},
}],
},
pan: {
enabled: true,
mode: 'x',
rangeMin: {
x: range_min,
},
rangeMax: {
x: range_max,
},
},
zoom: {
enabled: true,
mode: 'x',
threshold: 10,
rangeMin: {
x: range_min,
},
rangeMax: {
x: range_max,
},
},
}
});
Также не забудьте установить зависимости.