C++;图形库 有人能给我一个好的、免费的、易于使用的C++库,允许在微软Windows的窗口中绘制数学函数?(例如抛物线x^2+5x+3=0)

C++;图形库 有人能给我一个好的、免费的、易于使用的C++库,允许在微软Windows的窗口中绘制数学函数?(例如抛物线x^2+5x+3=0),c++,math,graphics,drawing,2d,C++,Math,Graphics,Drawing,2d,如果使用Vista/7,还可以使用GDI/+、OpenGL、Direct3D、Direct2D。有很多。我用Qt编写了一个类似的程序。Qt一旦设置好就很好了,但如果您从未使用过它(OpenGL、DirectX等也一样),它可能需要一些努力 您可以创建并将其设置为所需的任何背景颜色,然后逐像素地调用函数在图像宽度上运行程序以获取y值。大致: for (int i = 0; i < imageWidth; i++) { image->setPixel(i, yourFunction

如果使用Vista/7,还可以使用GDI/+、OpenGL、Direct3D、Direct2D。有很多。我用Qt编写了一个类似的程序。Qt一旦设置好就很好了,但如果您从未使用过它(OpenGL、DirectX等也一样),它可能需要一些努力

您可以创建并将其设置为所需的任何背景颜色,然后逐像素地调用函数在图像宽度上运行程序以获取y值。大致:

for (int i = 0; i < imageWidth; i++) {
   image->setPixel(i, yourFunction(i), lineColor);
}
for(int i=0;i设置像素(i,函数(i),线条颜色);
}

创建QImage后,可以使用setPixmap()将其附加到。一旦附加了它,您就可以在布局中显示图像。

因为您需要一个现成的绘图小部件,请使用

它使用Qt

您可以直接使用Qt,就像contero的回答一样,而不使用Qwt,因为任务非常简单。然而,Qwt有很多内置的图形特性,并且使用非常简单

另一个选项是基于的。
从其网站:
wxMathPlot的主要功能:

  • 完全由鼠标驱动的视图控制:平移、缩放、滚动、框 定位
  • 印刷课
  • 打印窗口的屏幕截图保存(BMP、PNG和JPEG格式)
  • 用图例或鼠标坐标显示覆盖可移动框
  • 可以设置边距以避免打印覆盖轴标签
  • 柔性轴定位
  • 一系列有用的图层,用于直接从STL向量、可移动对象、协方差椭圆、位图等绘制数据
  • 多平台:在wxWidgets的任何地方运行

另一个基于wxWidgets的选项是,它有很多很好的功能,可以将数学函数绘制成曲线,就像你可以很容易地将这个y=140*cos(x/20)+80*cos(x*2/20)+40*cos(x*4/20)”传递给曲线对象,然后它就会被绘制出来,这太神奇了! 看看这些有一些用字符串格式的方程绘制的曲线!

你提到了你的语言(C++)和平台(Windows)另外,还有一些框架可以用来编写一个Windows C++应用程序:Qt、MFC、C++ Builder……另外,C和C++可以与任何东西进行接口。所以你决定使用哪个绘图库取决于你使用的UI框架和你愿意输入哪种外部接口或依赖关系。产生:

  • 如果您使用的是Qt,则应使用,如所示
  • 如果您使用的是C++Builder,则应尝试或
  • 对于wxWidgets,请尝试和推荐的或
  • 如果您不介意调用外部程序来进行绘图,那么这是一个流行且功能强大的解决方案
  • 如果您愿意嵌入Python,那么它非常流行,Python可以简化一些图表的开发
  • 对于<强>不典型的解决方案,可以让C++库生成一个网页,然后指向一个嵌入的Web浏览器。
  • 对于一个强的框架独立的C或C++库没有外部依赖关系,我发现的最有希望的解决方案是,虽然我还没有机会使用它。

肯定是gnuplot,而库gnuplot++

我创建了一个绘图工具,并在几个小时前发布了它

要使用此工具,您可以使用桌面计算机显示图形


你的目标项目可以在任何平台的任何语言中运行,以更新图形,只需通过网络发送数据。< /P>我是指为此目的完成的一些库,它允许我用一个简单的STESTI绘制函数的图形,需要像C++ Builder(RAD Studio)的TcCar组件那样的东西。就用法而言,Semplicity是示例公式末尾的双引号,是二阶导数运算符,还是仅仅是结束双引号?