- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我想绘制每 100 毫秒出现的大量数据 (3k)。我试过 QCustomPlot和 Qwt精确的 3k 点,我在使用 Qwt 绘图时表现非常好,而使用 QCustomPlot 时表现非常糟糕。我认为我在使用 QCustomPlot 时行为不当,我使用此代码在 QCustomPlot 中绘图(此示例来自 QCustomPlot plot-examples,我编辑了函数 setupQuadraticDemo
):
void MainWindow::setupQuadraticDemo(QCustomPlot *customPlot)
{
demoName = "Quadratic Demo";
customPlot->addGraph();
customPlot->setNotAntialiasedElements(QCP::AntialiasedElement::aeAll);
customPlot->xAxis->setRange(0, 1000);
customPlot->yAxis->setRange(0, 1000);
customPlot->xAxis->setLabel("x");
customPlot->yAxis->setLabel("y");
connect(&dataTimer, &QTimer::timeout, this, [customPlot]
{
constexpr auto length = 3000;
QVector<double> x(length), y(length);
std::srand(std::time(nullptr));
for (int i = 0; i < length; ++i)
{
x[i] = std::rand() % 1000;
y[i] = std::rand() % 1000;
}
customPlot->graph(0)->setData(x, y, true);
customPlot->replot();
});
dataTimer.start(100);
}
和this code对于 Qwt。我对 QCustomPlot 做错了吗?为什么绘图速度太慢?
最佳答案
我想问题的根源在于代码本身。您正在以错误的方式更新点。您必须从代码中删除以下行
std::srand(std::time(nullptr));
此行将强制 rand()
的种子在确定的时间内固定(如果我想准确地说,您的种子值固定为 1 秒
),因此无论数据本身是否更新,您都看不到任何变化,因为重绘将在该持续时间内绘制相同的点(1 sec
)。
关于c++ - 为什么 QCustomPlot 在绘制大数据时速度太慢?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64489118/
说明 使用 QCustomPlot 绘图库辅助开发时整理的学习笔记。同系列文章目录可见 《绘图库 QCustomPlot 学习笔记》目录 。本篇介绍 QCustomPlot 帮助文档的配置
说明 使用 QCustomPlot 绘图库辅助开发时整理的学习笔记。同系列文章目录可见 《绘图库 QCustomPlot 学习笔记》目录 。本篇介绍 QCustomPlot 的一种使用方法
我用qcustomplot来画item。 我有两个项目。一个是项目文本,另一个是项目矩形。 我想做的是当我选择文本时,项目矩形改变颜色。 我已经使用 itemAt 来检查鼠标是否点击了一个项目。 但是
我正在开发一个带有绘图的简单 GUI,您可以在其中设置一些 x 和 y 范围。我如何从绘图上所有图形中选择这些范围内的所有项目?我试图重现在 mouse rectangular multi range
我是 QCustomPlot 的新手,想开始第一个关于基本用法的 QCustomPlot 示例。在下面的代码中:我总是有一个断点,它在程序即将调试时停止程序(没有错误并且构建成功完成) QCustom
我需要在程序测试期间创建一系列绘图。我想为此目的使用 QCustomPlot,但我遇到了问题。为了在文件中创建和保存我的绘图,我必须创建 QApplication,在我需要从 QMainWindow
我正在尝试使用上下文菜单将新的 sub-axes 图添加到现有的 qcustomplot 小部件。如果我在类构造函数中调用我的 _addGraph 函数,它会按预期工作。但是,如果我将它用作 slot
我正在使用 QCustomPlot 并在屏幕上绘制了多个图形,我希望能够单击并指向然后能够获取我单击的点的数据或坐标等上,我知道这对于使用 QCP::iSelectPlottables 的整个图本身是
使用 QT 的 QCustomPlot 插件。我不得不绘制可能非线性的点,因此图形可能看起来像这样 结果如何 但这是显示的内容 使用这段代码 plotter->addGraph();
使用 qcustomplot 创建绘图后,如何根据现有的 X 值检索 Y 值,然后在这些位置绘制点? 我的尝试如下: 创建情节: 此函数创建一个绘图,在 x 轴上添加一些数据(日期)并在 y 轴上添加
我想问一个关于qcustomplot的问题。如何根据 Slider 更改 itemLine 位置? (比如 x = a) #include "itemline.h" #include "ui_item
我使用 QCustomPlot 来显示图片的直方图。我用来设置曲线的函数如下: void SingleHistogram::setHist(const QVector &x,
QCustomPlot 具有接受 const 变量的 setData 函数。有没有办法让 QCustomPlot 可以用来动态绘图?QCustomPlot setData 函数接受常量 vector
说明 使用 QCustomPlot 绘图库辅助开发时整理的学习笔记。同系列文章目录可见 《绘图库 QCustomPlot 学习笔记》目录 。本篇介绍如何使用 QCustomPlot 绘制
有没有办法在隐藏网格的同时在 QCustomPlot 中显示零线?我尝试用以下行隐藏网格: ui->customPlot->xAxis->grid()->setVisible(false); ui->
我想绘制每 100 毫秒出现的大量数据 (3k)。我试过 QCustomPlot和 Qwt精确的 3k 点,我在使用 Qwt 绘图时表现非常好,而使用 QCustomPlot 时表现非常糟糕。我认为我
我成功地在 visual studio 2012 中构建了一个程序,该程序在没有插件的情况下运行 QT。我包含了 QT include 文件夹并手动将库添加到资源中。然后它编译并运行。 现在我想以相同
我目前正在开发一个实时绘制来自 ADC 的数据的应用程序。在某些情况下,我必须绘制大约 150k 个点,这需要一些时间。所以问题是数据到达的频率可能比我能够绘制的频率更高。 我不需要高帧率。我也可以努
我使用 Windows 7 x64、Qt 5.6、Visual Studio 2015、QCustomPlot 1.3.2。我需要从传感器(实时)绘制温度图。我每 500 毫秒接收一次温度值(频率 =
我正在尝试将文本项添加到 QCustomPlot 上小部件。 QCPItemText构造函数接受一个指向 QCustomPlot 的指针小部件作为参数。 QCPItemText::QCPItemTex
我是一名优秀的程序员,十分优秀!