Używam Chartjs do wyświetlania wykresu liniowego i to działa dobrze:
// get line chart canvas
var targetCanvas = document.getElementById('chartCanvas').getContext('2d');
// draw line chart
var chart = new Chart(targetCanvas).Line(chartData);
Ale problem pojawia się, gdy próbuję zmienić dane wykresu. Aktualizuję wykres, tworząc nową instancję wykresu z nowymi punktami danych, a tym samym ponownie inicjując płótno.
To działa dobrze. Jednak gdy najeżdżam kursorem na nowy wykres, jeśli zdarzy mi się przejść przez określone lokalizacje odpowiadające punktom wyświetlanym na starym wykresie, wskaźnik myszy / etykieta jest nadal wyzwalany i nagle stary wykres jest widoczny. Pozostaje widoczny, gdy moja mysz znajduje się w tym miejscu, i znika, gdy odejdzie od tego punktu. Nie chcę, aby wyświetlał się stary wykres. Chcę go całkowicie usunąć.
Próbowałem wyczyścić płótno i istniejący wykres przed załadowaniem nowego. Lubić:
targetCanvas.clearRect(0,0, targetCanvas.canvas.width, targetCanvas.canvas.height);
i
chart.clear();
Ale żadne z nich do tej pory nie zadziałało. Jakieś pomysły, jak mogę temu zapobiec?