gpt4 book ai didi

qt - QT 折线图中 x 轴上的坐标不正确/自动调整

转载 作者:行者123 更新时间:2023-12-02 04:28:19 24 4
gpt4 key购买 nike

我正在 QT 5.7 中创建一个简单的折线图。

以下是我的 certificate_page_childs 表结构:

enter image description here

我的 C++ 代码:

QLineSeries *series = new QLineSeries();
QSqlDatabase db = QSqlDatabase::addDatabase("QSQLITE");
QString db_path = QDir::currentPath();
db_path = db_path + QString("/some_file");
db.setDatabaseName(db_path);
db.open();
QSqlQuery query;
query.prepare("SELECT hardness_val FROM certificate_page_childs where cp_id=:value");
query.bindValue(0,statisticalanalysis::cert_id_gbl);
if(query.exec()){
int d = 1;
while (query.next()) {
series->append(d, query.value(0).toDouble()); //Method 1
//qDebug() << query.value(0).toString();
//*series << QPointF(d,query.value(0).toDouble()); // Method 2
qDebug() << d;
d++;

}
}
else
{
qDebug() << query.lastError();
}
db.close();
QChart *chart = new QChart();
chart->legend()->hide();
chart->addSeries(series);
chart->createDefaultAxes();
chart->setTitle("Simple line chart example");
chart->setAnimationOptions(QChart::SeriesAnimations);
ui->graphicsView->setRenderHint(QPainter::Antialiasing);
ui->graphicsView->setChart(chart);

以下是我的输出:

enter image description here

我需要什么:

enter image description here

X 轴:读数数

Y 轴:每个读数的一些值

请将 x 轴与输出图像和所需图像进行比较。

任何人都可以指导我直到达到预期的结果吗?

最佳答案

在这种特殊情况下,作为 X 轴,您具有 1:1:n 的值,您可以设置 tickCountlabelFormat:

QChart *chart = new QChart();
chart->legend()->hide();
chart->addSeries(series);
chart->createDefaultAxes();
chart->setTitle("Simple line chart example");
chart->setAnimationOptions(QChart::SeriesAnimations);
ui->graphicsView->setRenderHint(QPainter::Antialiasing);
ui->graphicsView->setChart(chart);
QValueAxis *axisX = static_cast<QValueAxis *>(chart->axisX(series)); // <--
axisX->setTickCount(series->count()); // <--
axisX->setLabelFormat("%d"); // <--

关于qt - QT 折线图中 x 轴上的坐标不正确/自动调整,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51473135/

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