У меня есть компонент React, использующий библиотеку react-chartjs-2 для отображения некоторых данных. График с данными работает нормально. Чего я не могу сделать, так это заставить диаграмму работать с плагином chartjs-plugin-zoom. Я не уверен, что не так с конфигом. Я использую:
реагировать-диаграммаjs-2: ^ 3.0.3
chartjs-plugin-zoom: ^ 1.0.1
import { Line } from 'react-chartjs-2'
import * as zoom from 'chartjs-plugin-zoom'
import classes from './Chart.module.css'
interface Chart {
title: string
labels: string[]
datasets: any
}
const Chart: React.FC<Chart> = props => {
const data = {
title: props.title,
labels: props.labels,
datasets: props.datasets,
}
const options = {
maintainAspectRatio: false,
responsive: true,
elements: {
point: {
radius: 0,
},
line: {
borderWidth: 1.5,
},
},
scales: {
x: {
ticks: {
color: 'rgba( 0, 0, 1)',
},
grid: {
color: 'rgba(0, 0, 0, 1)',
},
},
y: {
min: 1,
max: 200000,
type: 'logarithmic',
ticks: {
color: 'rgba(0, 0, 0, 1)',
},
grid: {
color: 'rgba(0, 0, 0, 1)',
},
},
},
plugins: {
zoom: {
zoom: {
enabled: true,
mode: 'xy',
speed: 100,
},
pan: {
enabled: true,
mode: 'xy',
speed: 100,
},
},
},
}
return (
<div className={classes.chartContainer}>
<Line
type='line'
title={props.title}
data={data}
options={options}
width={900}
height={450}
/>
</div>
)
}
export default Chart
На всякий случай это файл css.
.chart-container {
height: 450px;
width: 900px;
}
Любые идеи?