cabana: recalc y-axis label width after unit change (#27466)

recalc width
old-commit-hash: 85a37d276c
beeps
Dean Lee 2 years ago committed by GitHub
parent 7ad3a3fd42
commit 2026a1b454
  1. 7
      tools/cabana/chartswidget.cc

@ -591,11 +591,14 @@ void ChartView::updateAxisY() {
if (it->y() > max) max = it->y(); if (it->y() > max) max = it->y();
} }
} }
axis_y->setTitleText(unit);
if (min == std::numeric_limits<double>::max()) min = 0; if (min == std::numeric_limits<double>::max()) min = 0;
if (max == std::numeric_limits<double>::lowest()) max = 0; if (max == std::numeric_limits<double>::lowest()) max = 0;
if (axis_y->titleText() != unit) {
axis_y->setTitleText(unit);
y_label_width = 0;// recalc width
}
double delta = std::abs(max - min) < 1e-3 ? 1 : (max - min) * 0.05; double delta = std::abs(max - min) < 1e-3 ? 1 : (max - min) * 0.05;
auto [min_y, max_y, tick_count] = getNiceAxisNumbers(min - delta, max + delta, axis_y->tickCount()); auto [min_y, max_y, tick_count] = getNiceAxisNumbers(min - delta, max + delta, axis_y->tickCount());
if (min_y != axis_y->min() || max_y != axis_y->max() || y_label_width == 0) { if (min_y != axis_y->min() || max_y != axis_y->max() || y_label_width == 0) {

Loading…
Cancel
Save