I looked at the different options for plotting functions (or other types of graphs) in an interactive window. I mostly use wxWidgets but I'd be open to any other "interfaces".
我查看了在交互式窗口中绘制函数(或其他类型的图形)的不同选项。我主要使用wxWidgets,但我对任何其他“接口”都是开放的。
Looking at what is available, here is what I've found:
wxPlot: Not updated since 2006. But it would be a good candidate if it was...
wxPlot:自2006年以来没有更新。但是如果它是…
wxMathPlot: Very new, not mature, few features (still active?)
wxMathPlot:非常新的、不成熟的、很少的特性(仍然活跃吗?)
libgraph: Outdated, not rebust, 2D only and outputs images only.
libgraph:过时的、非rebust、2D only和仅输出图像。
koolplot: Too basic, no control over the created window.
koolplot:太基础了,无法控制创建的窗口。
EasyBMP: Very basic, only images output.
非常基本,只输出图像。
plotutils: Command line only.
plotutils:命令行。
plplot: C and C++ API are barely maintained. It is in fact on this that wxPlot is based. Could be a could candidate also if C and C++ interface we're updated.
plplot:几乎不维护C和c++ API。wxPlot实际上就是基于此。如果我们更新了C和c++接口,可能也是一个候选。
Any comments? Ideas?
任何评论?想法吗?
Thanks!
谢谢!
14 个解决方案
#1
13
Even though this thread is old but gold. QCustomPlot is very recommendable as well to complement this list.
虽然这条线是旧的,但是是金子。QCustomPlot是非常推荐的,也是对这个列表的补充。
#2
12
MathGL have many plot types, C/Fortran interface and basic data analysis
MathGL有许多图类型,C/Fortran接口和基本的数据分析
#3
9
I'm all about ROOT for these needs. Pretty heavy if you don't need all the analysis support, though.
我完全支持这些需求。不过,如果您不需要所有的分析支持,那就相当沉重了。
#4
#5
5
I programmatically provide required input files to GNUPlot executable and invoke it using system()
function. It is suitable to my situation since I only want to visualize my data during research. But if you want the plotting functionality integrated into your executable file, maybe this is not for you :)
我以编程方式向GNUPlot可执行文件提供所需的输入文件,并使用system()函数调用它。这很适合我的情况,因为我只是想在研究过程中可视化我的数据。但是,如果您希望将绘图功能集成到可执行文件中,也许这并不适合您:)
#7
3
Might wxChart be an option? I have not used it myself however and it looks like it hasnt been updated for a while.
wxChart可能是一个选项吗?我自己还没有使用过它,看起来它已经有一段时间没有更新了。
#8
3
Just an idea: Use Python as embeddable scripting language to plot your graphs. Python has a plethora of plotting libraries.
只是一个想法:使用Python作为可嵌入的脚本语言来绘制图表。Python有大量的绘图库。
#10
1
AntiGrain Geometry (AGG). http://www.antigrain.com/. Its an opensource 2D vector graphics library. Its a standalone library with no additional dependencies. Has good documentation. Python plotting library matplotlib uses AGG as one of backends.
AntiGrain几何(gg)。http://www.antigrain.com/。它是一个开源的二维矢量图形库。它是一个独立的库,没有附加的依赖项。具有良好的文档。Python绘图库matplotlib使用AGG作为后台之一。
#11
1
Have a look at wxArt2d it is a complete framework for 2d editing and plotting. See the screenshots for more examples.
看看wxArt2d,它是一个完整的2d编辑和绘图框架。更多示例请参见屏幕截图。
Some interesting features:
一些有趣的特性:
- Reading and writing SVG and CVG
- 阅读和编写SVG和CVG。
- Several views of the same document
- 同一文档的几个视图
- Changes are updated when idle
- 更改在空闲时更新
- Optimized drawing of 2d objects
- 优化二维对象的绘制
#12
1
Hey! I'm the developer of wxMathPlot! The project is active: I just took a long time to get a new release, because the code needed a partial rewriting to introduce new features. Take a look to the new 0.1.0 release: it is a great improvement from old versions. Anyway, it doesn't provide 3D (even if I always thinking about it...).
嘿!我是wxMathPlot的开发者!项目是活动的:我只是花了很长时间才得到一个新的版本,因为代码需要部分重写以引入新的特性。看看新的0.1.0发行版:它是对旧版本的巨大改进。无论如何,它不提供3D(即使我总是在想它……)
#13
0
I found the game library Allegro easy to use back in the day. Might be worth a look.
我发现游戏库的快板在以前很容易使用。也许值得一看。
#14
-1
OpenGL. It WILL be hard and possibly rewriting the wheel, though. Keep in mind that OpenGL is a general 3D library, and not a specific plot library, but you can implement plotting based on it.
OpenGL。不过,这将是困难的,而且很有可能改写车轮。请记住,OpenGL是一个通用的3D库,而不是一个特定的情节库,但是您可以基于它实现绘图。
#1
13
Even though this thread is old but gold. QCustomPlot is very recommendable as well to complement this list.
虽然这条线是旧的,但是是金子。QCustomPlot是非常推荐的,也是对这个列表的补充。
#2
12
MathGL have many plot types, C/Fortran interface and basic data analysis
MathGL有许多图类型,C/Fortran接口和基本的数据分析
#3
9
I'm all about ROOT for these needs. Pretty heavy if you don't need all the analysis support, though.
我完全支持这些需求。不过,如果您不需要所有的分析支持,那就相当沉重了。
#4
7
You have Qwt which is mature. There is a 3D version lurking somewhere. However, I have never been satisfied with the aesthetic result.
你有成熟的Qwt。有一个3D版本潜伏在某处。然而,我从来没有满意的审美结果。
It may be worth waiting for Qt3D to come out to write something better yourself easily.
等待Qt3D出来轻松地写出更好的东西可能是值得的。
#5
5
I programmatically provide required input files to GNUPlot executable and invoke it using system()
function. It is suitable to my situation since I only want to visualize my data during research. But if you want the plotting functionality integrated into your executable file, maybe this is not for you :)
我以编程方式向GNUPlot可执行文件提供所需的输入文件,并使用system()函数调用它。这很适合我的情况,因为我只是想在研究过程中可视化我的数据。但是,如果您希望将绘图功能集成到可执行文件中,也许这并不适合您:)
#6
#7
3
Might wxChart be an option? I have not used it myself however and it looks like it hasnt been updated for a while.
wxChart可能是一个选项吗?我自己还没有使用过它,看起来它已经有一段时间没有更新了。
#8
3
Just an idea: Use Python as embeddable scripting language to plot your graphs. Python has a plethora of plotting libraries.
只是一个想法:使用Python作为可嵌入的脚本语言来绘制图表。Python有大量的绘图库。
#9
#10
1
AntiGrain Geometry (AGG). http://www.antigrain.com/. Its an opensource 2D vector graphics library. Its a standalone library with no additional dependencies. Has good documentation. Python plotting library matplotlib uses AGG as one of backends.
AntiGrain几何(gg)。http://www.antigrain.com/。它是一个开源的二维矢量图形库。它是一个独立的库,没有附加的依赖项。具有良好的文档。Python绘图库matplotlib使用AGG作为后台之一。
#11
1
Have a look at wxArt2d it is a complete framework for 2d editing and plotting. See the screenshots for more examples.
看看wxArt2d,它是一个完整的2d编辑和绘图框架。更多示例请参见屏幕截图。
Some interesting features:
一些有趣的特性:
- Reading and writing SVG and CVG
- 阅读和编写SVG和CVG。
- Several views of the same document
- 同一文档的几个视图
- Changes are updated when idle
- 更改在空闲时更新
- Optimized drawing of 2d objects
- 优化二维对象的绘制
#12
1
Hey! I'm the developer of wxMathPlot! The project is active: I just took a long time to get a new release, because the code needed a partial rewriting to introduce new features. Take a look to the new 0.1.0 release: it is a great improvement from old versions. Anyway, it doesn't provide 3D (even if I always thinking about it...).
嘿!我是wxMathPlot的开发者!项目是活动的:我只是花了很长时间才得到一个新的版本,因为代码需要部分重写以引入新的特性。看看新的0.1.0发行版:它是对旧版本的巨大改进。无论如何,它不提供3D(即使我总是在想它……)
#13
0
I found the game library Allegro easy to use back in the day. Might be worth a look.
我发现游戏库的快板在以前很容易使用。也许值得一看。
#14
-1
OpenGL. It WILL be hard and possibly rewriting the wheel, though. Keep in mind that OpenGL is a general 3D library, and not a specific plot library, but you can implement plotting based on it.
OpenGL。不过,这将是困难的,而且很有可能改写车轮。请记住,OpenGL是一个通用的3D库,而不是一个特定的情节库,但是您可以基于它实现绘图。