【问题标题】:How to visualize data with Qt QwtPlot3D如何使用 Qt QwtPlot3D 可视化数据
【发布时间】:2014-05-02 23:15:27
【问题描述】:

我在使用 Qt+QwtPlot3D 库时遇到问题。

我需要可视化数据。数据是一个简单的 5x5 矩阵。值是浮点数。

例如这样:

0  0    0    0     0
0  4,5  0,5  1,5  -2
0  0,5  2    0,5   0
0  0,5  0,5  0,45  0
0  0    0    0     0

我尝试了所有示例。我知道要使用库,我应该使用从类 Qwt3D::Fucntion 继承的重新加载的 operator 创建类。

double operator (double x, double y);

这条路不适合我,因为我没有z = f(x,y),我只有坐标。


official manual我找到了这个功能:

bool loadFromData(double **data, unsigned int columns, unsigned int rows, 
                  double minx, double maxx, double miny, double maxy)

但没有示例或示例如何使用此函数绘制绘图。

你能帮我找到在 Qt 中绘制矩阵的方法吗?

【问题讨论】:

    标签: c++ qt opengl plot visualization


    【解决方案1】:

    如果延迟对您来说并不重要,只需使用QProcess 执行 gnuplot.exe。将绘图保存到 *.png。然后在你的程序中打开图片

    【讨论】:

    • 延迟至关重要。以及渲染需要多少时间?
    • 这取决于硬盘的速度。绘制矩阵需要几毫秒。
    【解决方案2】:

    忘记这个库。太旧了,虽然最近更新了。使用MathGL

    【讨论】:

    • 是的,我已经尝试过MathGL。它不是由CMake+MinGw 编译的。我在 Windows7 x64 上试过。
    • 我记不太清了。首先它找不到libPngzLib。然后它需要OpenMP。我查看了OpenMP 库的大小并决定停止编译MathGL。对于 2d 花盆,我使用QCustomPlot。它小巧、美观且易于使用。我尝试为 3d 绘图找到类似的东西。
    • 最简单的 3d 绘图工具是 gnuplot。
    • 它是一个独立的程序。我认为有必要组织管道。
    • 你可以试试gnuplot++gnuplot-iostream
    猜你喜欢
    • 2014-05-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-06-28
    • 2015-02-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多