如何在C++中绘制直方图和点图并保存到图片中

How to plot Histogram and Dot diagrams and save to picture in C++

本文关键字:保存 直方图 C++ 绘制      更新时间:2023-10-16

我测试了很多不同的C++库(SIGL、PLplot、libharu和其他一些随机库)用于绘图,但我没有找到任何适合我需要或工作正常的库。

我的需要是创建一个直方图和一个点图使用100000-1000 000值从二维矩阵。将其保存为首选的图片png或jpeg格式。我使用Visual studio 2010,并且有一个Windows XP操作系统。我需要能够使用C++,我更希望库中也有一些好的文档。

注意,我不想使用Matlab,因为这是我要替换的。

爱Pewdut

我很同情不想使用Matlab。如果这只是你不喜欢的非自由方面,那么Octave是一个很好的选择,它是一个相当完整的用于gui构建设施的Matlab克隆escept。

我使用GSL(非常强烈推荐)来创建直方图,它有库函数来实现这一点(1-和2-D),其数据结构(矩阵、向量)可以处理至少300000 x 64倍的数据(这与我在2GB RAM机器上使用的数据一样高,自然更多的RAM=更大的容量,可能)。它非常快。对于绘图,我使用Qt,其中的Qwt工具箱具有制作直方图的特定功能。示例中没有显示,但轴标签和图例很简单。Qt是相对重量级的,但出色的imo.

编辑:Qwt的作者在这里列出了支持导出绘图的类/函数。