gpt4 book ai didi

c++ - QDateTimeAxis (QtCharts) 中的错误值

转载 作者:行者123 更新时间:2023-11-28 05:03:42 25 4
gpt4 key购买 nike

我正在使用 QtCharts 来显示模拟数据。模拟从零时间开始,但我的图表轴似乎总是从 19 小时开始。这让我很困惑。图表的设置很简单:

std::vector<SimData> data;

// ... Populate data

auto series = new QLineSeries();

for(auto i : data)
{
// Append time in milliseconds and a value
series->append(i.msTime, i.value);
}

this->legend()->hide();

this->addSeries(series);

this->axisX = new QDateTimeAxis;
this->axisX->setTickCount(10);
this->axisX->setFormat("HH:mm:ss");
this->axisX->setTitleText("Sim Time");
this->axisX->setMin(QDateTime());
this->addAxis(this->axisX, Qt::AlignBottom);
series->attachAxis(this->axisX);

this->axisY = new QValueAxis;
this->axisY->setLabelFormat("%i");
this->axisY->setTitleText(x->getID().c_str());
this->addAxis(this->axisY, Qt::AlignLeft);
series->attachAxis(this->axisY);

如果我在没有数据的情况下运行,但只显示图表,我会得到:

QtChart with QDateTimeAxis如果我添加数据,从时间 0 开始,数据总量是正确的,但时间仍然从 19:00:00 开始。为什么时间不是从 00:00:00 开始?

QtChart with QDateTimeAxis

最佳答案

我相信这是因为您位于东海岸 (UTC-5),因此 0 代表 UTC-5 的凌晨 12 点 (2400),而 0ms 代表提前 5 小时(前一天 1900)。我遇到了同样的问题,将我的时区设置为 UTC(在 ubuntu 下)并且 voila 轴从 0 小时而不是 19 开始。

关于c++ - QDateTimeAxis (QtCharts) 中的错误值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45326462/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com