Как предотвратить смещение значений ряда до 100% диапазона диаграммы Qt? - PullRequest
0 голосов
/ 09 февраля 2019

Я создаю диаграмму из значений базы данных (две серии).Значения находятся в диапазоне 0 - 1. Когда ось создается командой:

chart->createDefaultAxes();

Тогда график выглядит так (обратите внимание на максимальное значение 0,941):

enter image description here

Я бы хотел иметь диапазон оси Y от 0 до 1 точно.Но когда оси создаются явно

QValueAxis *axisY = new QValueAxis(chart);
chart->setAxisY(axisY);
axisY->setRange(0,1);
axisY->setTickCount(11);

, тогда значения «растягиваются» до 100% диапазона, и на графике отображаются нереальные значения.Обе строки имеют максимум 1,0, который не равен тому, что находится в базе данных.

enter image description here

Как предотвратить "растяжение" значений?

1 Ответ

0 голосов
/ 09 февраля 2019

Я нашел решение.Когда оси присоединяются с помощью команд ниже, все работает:

chart->setAxisX(axisX,chart->series().at(0));
chart->setAxisX(axisX,chart->series().at(1));
chart->setAxisY(axisY,chart->series().at(0));
chart->setAxisY(axisY,chart->series().at(1));

Но мне не ясно, почему не работают следующие простые команды:

chart->setAxisX(axisX);
chart->setAxisY(axisY);

Я ожидал, чтоесли ряд не указан, то ось будет использоваться для всех рядов неявно.А если оси не используются автоматически, почему значения «растягиваются»?Это не ожидаемое поведение ...

...