我正在从数据库值(两个系列)创建图表。值的范围是0-1。通过命令创建轴时:
chart->createDefaultAxes();
然后图形如下所示(注意最大值0,941):
我希望Y轴的范围完全从0到1。但是当显式创建轴后
QValueAxis *axisY = new QValueAxis(chart);
chart->setAxisY(axisY);
axisY->setRange(0,1);
axisY->setTickCount(11);
然后将值“拉伸”到范围的100%,并且图形显示不真实的值。这两行的最大值均为1.0,这不是数据库中的值。
如何防止值“拉伸”?
答案 0 :(得分:0)
我找到了解决方案。使用以下命令连接轴后,一切正常:
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);
我期望如果未指定系列,则轴将隐式用于所有系列。如果没有自动使用轴,为什么会“拉伸”值?这不是预期的行为...