      axis_y->setRange(min->y(), max->y());
    }
  }
  
  // ChartView
  
  void ChartView::mouseReleaseEvent(QMouseEvent *event) {
    auto rubber = findChild<QRubberBand *>();
    if (event->button() == Qt::LeftButton && rubber && rubber->isVisible()) {
      auto [begin, end] = can->range();
 
</s> remove   chart_view->chart()->axisX()->setRange(begin, end);
 </s> add   chart()->axisX()->setRange(begin, end); </s> remove   QLineSeries *series = (QLineSeries *)chart_view->chart()->series()[0];
 </s> add   QLineSeries *series = (QLineSeries *)chart()->series()[0];
void ChartView::enterEvent(QEvent *event) {
  track_line->setVisible(true);
  value_text->setVisible(true);
  QChartView::enterEvent(event);
}

void ChartView::leaveEvent(QEvent *event) {
  track_line->setVisible(false);
  value_text->setVisible(false);
  QChartView::leaveEvent(event);
}
      axis_y->setRange(min->y(), max->y());
    }
  }
  
void ChartView::enterEvent(QEvent *event) {
  track_line->setVisible(true);
  value_text->setVisible(true);
  QChartView::enterEvent(event);
}

void ChartView::leaveEvent(QEvent *event) {
  track_line->setVisible(false);
  value_text->setVisible(false);
  QChartView::leaveEvent(event);
}
  
  void ChartView::mouseReleaseEvent(QMouseEvent *event) {
    auto rubber = findChild<QRubberBand *>();
    if (event->button() == Qt::LeftButton && rubber && rubber->isVisible()) {
      auto [begin, end] = can->range();
keep keep keep keep replace keep keep keep keep keep
 Cabana: display the (x,y) values while MouseMove on the chart (#26064) 
tools/cabana/chartswidget.cc