有人可以建议我一个好的,免费的,易于使用的c ++库,允许在微软窗口的窗口中绘制数学函数吗? (例如,抛物线x ^ 2 + 5x + 3 = 0)
答案 0 :(得分:16)
答案 1 :(得分:5)
我使用Qt编写了一个与此类似的程序。一旦你设置它,Qt就很棒了,但是如果你从未使用过它可能需要一些努力(就像OpenGL,DirectX等......)。
您可以创建一个QImage并将其设置为您想要的任何背景颜色,然后通过图像的宽度逐个像素调用您的函数来运行程序以获取y值。大致是:
for (int i = 0; i < imageWidth; i++) {
image->setPixel(i, yourFunction(i), lineColor);
}
创建QImage后,可以使用setPixmap()将其附加到QLabel。一旦你附上它,你就可以在布局中显示图像。
答案 2 :(得分:4)
另一个选项是基于wxMathPlot的wxWidgets
从它的网站:
wxMathPlot主要特点:
答案 3 :(得分:2)
另一个基于wxWidgets的选项是wxArt2D,它有很多用于绘制数学函数作为曲线的好功能,就像你可以很容易地传递这个 y = 140 * cos(x / 20)+ 80 * cos(x * 2/20)+ 40 * cos(x * 4/20)“一个曲线对象,它将被绘制,这太神奇了! 看看这些screenshots有些曲线是用 string 格式绘制的!
答案 4 :(得分:1)
您提到了您的语言(C ++)和平台(Windows),但是有可用于编写Windows C ++应用程序的框架:Qt,MFC,C ++ Builder ...此外,C和C ++几乎可以与任何东西进行交互。因此,您决定使用哪个绘图库取决于您使用的UI框架以及您愿意介绍的外部接口或依赖项:
答案 5 :(得分:0)
如果您使用的是Vista / 7,也可以使用GDI / +,OpenGL,Direct3D,Direct2D。那里有很多。
答案 6 :(得分:0)
绝对gnuplot,以及库gnuplot ++
答案 7 :(得分:0)
我创建了一个绘制图形的工具,并在几个小时前发布了它。
https://www.youtube.com/watch?v=xD080qQVaD8&feature=youtu.be
https://github.com/burlachenkok/plotter_plusplus
要使用此工具,您可以使用台式计算机显示图形。
您的目标项目可以在任何平台的任何语言中运行 - 更新图形只需通过网络发送数据。