I am using chart.js v.2. library and I am trying to change the cursor style to 'pointer' when the user is hovering over points of chart. (I am going to use this with bar, pie, line charts). It seems that there should be support for this option in charts.js v.2. but I can't find an example anywhere.
EDIT: I did not mention that I was using chart with react, to be more specific I am using this react wrapper.
I am importing e.g. chart Line import { Line } from 'react-chartjs-2';
class ChartTimelineChart extends Component {
constructor(props){
super(props);
this.options = {
responsive: true,
maintainAspectRatio: false,
animation: {
easing: 'easeOutCirc',
duration: 1000
},
pointStyle : 'circle',
scales: {
xAxes: [{
display: true,
gridLines: {display: false},
scaleLabel: {display: true}
}],
yAxes: [{
display: true,
gridLines: {display: false},
ticks: {beginAtZero:true},
scaleLabel: {display: true}
}]
},
tooltips: {
displayColors: false
},
legend: false
};
searchChart(elem, props, data) {
//Something...
}
render(){
return (
(this.props.selectedYears.length)
? ( <div>
<Line data={this.props.selectedYearsData}
redraw={true}
options={this.options}
getElementAtEvent={elem => this.searchChart(elem, this.props, this.props.selectedYearsData)} />
</div>)
: <Line data={{datasets: [], labels: []}}
redraw={true}
options={this.options} />
)
}
};
With Chart.js 2.x I use this approach. Just add this in the options:
onHover: (event, chartElement) => {
event.target.style.cursor = chartElement[0] ? 'pointer' : 'default';
}
Hope it helps.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With