标签: jfreechart

如何使用JFreeChart绘制曲面?

我希望能够设置每个点的颜色(由x和y处理,其中x是一个DateTime(实际上是joda-time),y是一个双倍)在图表上表示az = f(x,y) )价值.JFreeChart可以吗?

java charts scala jfreechart

2
推荐指数
2
解决办法
3303
查看次数

Clearing a series and keep others in JFreeChart

I'm using JFreeChart to create a chart that has 6 TimeSeries in it.
Problem: When I call .clear() on one of those series all others get hidden:

    this.Series1.clear();
Run Code Online (Sandbox Code Playgroud)

Question: What should I do to clear a series without others disappear?

Before calling .clear() on the "Red" series.
在此处输入图片说明

After calling .clear() on the "Red" series.
在此处输入图片说明

time-series jfreechart

2
推荐指数
1
解决办法
4050
查看次数

是否有一种解决方法可以从一周的第一天开始制作DateAxis抽奖活动?

当我创建一个需要带周周期的轴的图表时,我遇到了这个问题.

当我设置勾选单位DateAxisnew DateTickUnit(DateTickUnitType.Day, 7),它每7天显示一次勾号.但是,刻度标记的日期不是从一周的第一天开始.您可以在屏幕截图中观察此行为.

青色线05-01 w18(May. 1, Week 18)低于w18(Week 18)刻度线,这是因为刻度线的日期w18实际上是5月2日,即星期三.

这使得图表看起来不正确,因为人们倾向于认为每个刻度被认为是本周的开始.

在检查源代码后,我发现DateAxis剂量不支持这种行为一周(无论如何都没有周类型).

我不能创建另一个,DateTickUnitType因为私有构造函数和correctTickDateForPosition()方法DateAxis也是私有的.我试图覆盖nextStandardDate()但没有满足结果出来.

如何DateAxis从一周的第一天开始绘制刻度线?


这是截图和示例代码

周期中带有DateAxis的图表

需要JFreeChart/JCommon

public class Main extends ApplicationFrame {

  public Main (String title) throws ParseException {
    super(title);
    JPanel chartPanel = createDemoPanel();
    chartPanel.setPreferredSize(new java.awt.Dimension(800, 600));
    setContentPane(chartPanel);
  }

  private static JFreeChart createChart(XYDataset dataset) {
    JFreeChart chart = ChartFactory.createXYLineChart("Week period in DateAxis", "X", "Y", 
        dataset, PlotOrientation.VERTICAL, true, true, …
Run Code Online (Sandbox Code Playgroud)

java jfreechart

2
推荐指数
1
解决办法
3131
查看次数

在Swing应用程序中使用JavaFX图表

我有一个传统的Java swing应用程序(扩展JFrame并有一个主类),它使用JFreeCharts来实现某些图表功能.我最近看过JavaFX并认为这些图表看起来很多,并且会给我的用户带来更好的体验.我希望将JavaFX图表场景嵌入到jInternalFrame中(后者又从我的jDesktopPane中调用).

我已经遵循了一个关于如何创建javafx应用程序和javafx图表的简单教程,但我仍然坚持如何在现有代码中获取场景.我经历过的一个例子向我展示了如何实现这一目标,但意味着将我的项目转换为扩展"application"类的javafx项目.

我怎样才能实现我的目标?是不是可以将我现有的JFrame保留为顶级类,只需将JFXPanel添加到我的jinternalframe即可.

任何帮助都会很棒,请注意我已经完成了一些教程,他们要求我将我的项目转换为javafx - 我只想在我现有的swing应用程序中使用javafx场景.

非常感谢,

java swing javafx jfreechart

2
推荐指数
1
解决办法
4845
查看次数

JFreeChart 渲染器(层)顺序

是否可以设置绘制渲染器(层)的顺序或请求在某些渲染器上“置于前面”?

当您将区域与线条组合并且希望线条始终“位于顶部”时,此类功能将非常有用。

java jfreechart

2
推荐指数
1
解决办法
1849
查看次数

如何在 JFreeChart 烛台图中将主体和边框颜色设置为相同

CandlestickRenderer 类中有一些方法可以将所有蜡烛的边框颜色更改为所需的颜色,但我需要将所有向上蜡烛边框设置为绿色,将所有向下蜡烛边框设置为红色。非常感谢任何建议或示例代码。

java jfreechart candlestick-chart

2
推荐指数
1
解决办法
1275
查看次数

JFreeChart - 自定义 RingChart

我想制作两个如下所示的环形图:

在此处输入图片说明

但是 RingPlot 似乎不是很可定制。我能想到的最好的办法是:

在此处输入图片说明

有机会用 JFreeChart 做我想做的事吗?

java jfreechart

2
推荐指数
1
解决办法
3173
查看次数

如何使用jfreechart从上到下绘制折线图?

我正在使用 jfreechart 绘制折线图,​​我需要从上到下绘制线...。意思是:0,0 坐标将在左上角。当我使用 'CategoryPlot' 时我能够做到这一点,只是通过更改 'PlotOrientation' 但左边的标签变得重叠......无论如何,我更喜欢 'xyplot'

更改“setInverted”或“setDomainAxisLocation”没有帮助

任何帮助将不胜感激

更新:为了更清晰,我正在重新发布我的代码(图表绘制部分)

在第一个代码中:我得到了需要的输出,如这里所示 http://i58.tinypic.com/r1fr01.jpg 只是通过在这部分传递 'PlotOrientation.HORIZONTAL',我使用的是 'CategoryPlot'

import java.awt.*;

import javax.swing.JPanel;
import org.jfree.chart.*;
import org.jfree.chart.plot.CategoryPlot;
import org.jfree.chart.plot.PlotOrientation;
import org.jfree.chart.renderer.category.LineAndShapeRenderer;
import org.jfree.chart.title.TextTitle;
import org.jfree.data.category.CategoryDataset;
import org.jfree.data.category.DefaultCategoryDataset;

import org.jfree.ui.*;

public class PCategory extends ApplicationFrame
{
    public PCategory(String s)
    {
        super(s);
        JPanel jpanel = createDemoPanel();
        jpanel.setPreferredSize(new Dimension(300, 200));
        setContentPane(jpanel);
    }

    private static CategoryDataset createDataset()
    {

        DefaultCategoryDataset defaultcategorydataset = new DefaultCategoryDataset();
        defaultcategorydataset.addValue(0,"Pixels", Integer.toString(0));
        defaultcategorydataset.addValue(2,"Pixels", Integer.toString(1));
        defaultcategorydataset.addValue(5,"Pixels", Integer.toString(2));
        defaultcategorydataset.addValue(10,"Pixels", Integer.toString(3));
        defaultcategorydataset.addValue(7,"Pixels", Integer.toString(4));
        defaultcategorydataset.addValue(8,"Pixels", Integer.toString(5));


        return …
Run Code Online (Sandbox Code Playgroud)

java linechart jfreechart

2
推荐指数
1
解决办法
2733
查看次数

创建缩略图的正确方法是什么?

我正在尝试使用 using 创建一些数据的缩略图图表JScrollPane,但遇到性能困难。此示例有大约 100 个缩略图,每个缩略图有 5000 个样本。当我尝试向下滚动并返回向上多次时,滚动会出现延迟,CPU 负载增加,应用程序内存使用量达到超过 500 Mb。

有没有办法在不减少数据的情况下避免此性能问题?

在此输入图像描述

import java.awt.Color;
import java.awt.EventQueue;
import java.awt.GridLayout;
import java.util.Random;

import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.JScrollPane;

import org.jfree.chart.ChartFactory;
import org.jfree.chart.ChartPanel;
import org.jfree.chart.JFreeChart;
import org.jfree.chart.plot.PlotOrientation;
import org.jfree.chart.plot.ThermometerPlot;
import org.jfree.data.general.DefaultValueDataset;
import org.jfree.data.xy.XYSeries;
import org.jfree.data.xy.XYSeriesCollection;

public class ThumbnailChartsTest extends JPanel {
private static final int W = 200;
private static final int H = W;
private static final int N = 5000;
private static final Random random = new Random();

private static …
Run Code Online (Sandbox Code Playgroud)

java swing thumbnails jfreechart jscrollpane

2
推荐指数
1
解决办法
998
查看次数

如何将 Java 的日期字符串/对象转换为 JFreeChart 的日期格式?

我正在使用 JFreeChart 库创建烛台图表。我需要将时间值传递给 OHLCSeries,但它只接受自己的时间值

我要通过这个类https://www.jfree.org/jfreechart/api/javadoc/org/jfree/data/time/Hour.html

而这个构造函数: Hour(int hour, int day, int month, int year)

我从 API 中获得的数据最初是这样的:2021-03-02T16:00:00.000Z

我的问题:如何将此日期字符串/Java 时间格式转换为 JFreeChart 的日期格式?我只能考虑一些复杂的转换成Java类型+分别返回每个值,或者使用正则表达式

java datetime jfreechart date-format java-time

2
推荐指数
1
解决办法
78
查看次数