【问题标题】:Draw mathematical functions in Java using JFreeChart使用 JFreeChart 在 Java 中绘制数学函数
【发布时间】:2012-05-16 08:39:13
【问题描述】:

我已经在谷歌上搜索了一段时间,没有找到任何有用的东西,所以我问你们。

我可以用 JFreeChart 绘制数学函数(例如正弦、余弦等)吗?

谢谢

【问题讨论】:

  • 是的,我相信你可以做到这一点。 JFreeChart 文档对此有何启示?
  • 是的,你可以——不确定它是否是内置的,但你只需要创建一个 XY 系列(例如 y = cos(x))并绘制它。你被困在哪里了?
  • 嗯,不多。这实际上是我的问题:我在参考资料中没有找到任何有用的东西。
  • 我不知道如何创建一些数学函数的图表。但是这个 XY 系列似乎对我有帮助。谢谢。

标签: java math plot jfreechart


【解决方案1】:

我假设您可以自己绘制点,在这种情况下,您只需评估图中每个 x 的数学函数。

getY(float x) {
    return /*your function*/ Math.sin(x);
}

【讨论】:

    【解决方案2】:

    JFreeChart 用于绘制数据,而不是函数。但是您应该能够创建一个 (x,y) 值的表,然后绘制它们。如果这是针对桌面应用程序,请查看 JavaFX api。 API 包括用于绘制线条的图表和函数。

    【讨论】:

      【解决方案3】:

      可能没有内置的方法来绘制 sinx,但不需要。请记住,您所说的是 y=sin(x)!您需要绘制的是 x 和 y 值。创建一个 x 值循环,然后使用 Java 和 Math 将它们插入 sin(x)。这个答案就是你的 y 值!所以现在你有了你的 x 和 y 值来绘制 sin(x)。

      例子

      final XYSeries series1 = new XYSeries("First");
      
      
          for(double i = 0; i < 10; i += 0.2){
              double sinx = Math.sin(i);
              series1.add(i, sinx);
          }
      
      
          final XYSeriesCollection dataset = new XYSeriesCollection();
          dataset.addSeries(series1);
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2017-05-24
        • 1970-01-01
        相关资源
        最近更新 更多