相关疑难解决方法(0)

在散点图中更改点的形状

我在JFreeChart散点图上绘制了数千个点.现在的问题是我的程序正在用"正方形"绘制点,但我需要一些帮助来解决如何将Shape点从"正方形"更改为"点/圆"的问题.任何帮助,将不胜感激.

// *我正在使用ShapeUtilities,但是当我使用XYItemRenderer/XYDotRenderer时,它没有改变指向"DaigonalCross"的形状 - 如果代码中有任何错误,请更正.* ///

import java.awt.Color;
import java.awt.Dimension;
import java.awt.Shape;
import java.util.*;
import javax.swing.JPanel;
import org.jfree.chart.*;
import org.jfree.chart.plot.PlotOrientation;
import org.jfree.chart.plot.XYPlot;
import org.jfree.chart.renderer.xy.XYItemRenderer;
import org.jfree.chart.renderer.xy.XYDotRenderer;
import org.jfree.data.xy.XYDataset;
import org.jfree.data.xy.XYSeries;
import org.jfree.data.xy.XYSeriesCollection;
import org.jfree.ui.ApplicationFrame;
import org.jfree.ui.RefineryUtilities;
import org.jfree.util.ShapeUtilities;

public class SPlotfinal extends ApplicationFrame {

    public SPlotfinal(String s) {
        super(s);
        JPanel jpanel = createDemoPanel();
        jpanel.setPreferredSize(new Dimension(500, 270));
        setContentPane(jpanel);
    }

    public static JPanel createDemoPanel() {

        JFreeChart jfreechart = ChartFactory.createScatterPlot("Scatter Plot Demo",
            "X", "Y", samplexydataset2(), PlotOrientation.VERTICAL, true, …
Run Code Online (Sandbox Code Playgroud)

java jfreechart

12
推荐指数
2
解决办法
3万
查看次数

如何在JFreeChart中的数轴的域上旋转刻度线标签?

就像在下面的示例中所做的那样,我希望图表域上的刻度线标签旋转45度,如下图所示:http: //left.subtree.org/2007/08/14/rotate -labels-jfreechart的/

区别在于,我想在带有数字轴的散点图上执行此操作.我找不到NumberAxis类中的setCategoryLabelPositions()的等价物.

java axis jfreechart

7
推荐指数
3
解决办法
1万
查看次数

如何使用JFreeChart鼠标单击获取点的坐标?

我试图在散点图图上用鼠标点击点的坐标.

单击某个点时,"单击事件!" 并在控制台上打印坐标.当您单击"测试"按钮时,"测试"并在控制台上打印坐标.

问题:单击按钮后打印的坐标是最新的.单击一个点后打印的坐标是先前选择的点之一.

我该如何解决这个问题(所以当我点击一个点时,会显示新选定点的坐标)?

package graph;

import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.EventQueue;
import java.awt.event.ActionEvent;
import java.util.Random;

import javax.swing.AbstractAction;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JPanel;

import org.jfree.chart.ChartFactory;
import org.jfree.chart.ChartMouseEvent;
import org.jfree.chart.ChartMouseListener;
import org.jfree.chart.ChartPanel;
import org.jfree.chart.JFreeChart;
import org.jfree.chart.axis.NumberAxis;
import org.jfree.chart.axis.NumberTickUnit;
import org.jfree.chart.plot.PlotOrientation;
import org.jfree.chart.plot.XYPlot;
import org.jfree.chart.renderer.xy.XYItemRenderer;
import org.jfree.data.xy.XYDataset;
import org.jfree.data.xy.XYSeries;
import org.jfree.data.xy.XYSeriesCollection;

/**
 * @see http://stackoverflow.com/questions/7231824
 * @see http://stackoverflow.com/questions/7205742
 * @see http://stackoverflow.com/questions/7208657
 * @see http://stackoverflow.com/questions/7071057
 */
public class GraphFrameOld extends JFrame {

    private static final int N = …
Run Code Online (Sandbox Code Playgroud)

java swing jfreechart

7
推荐指数
1
解决办法
6868
查看次数

使用JfreeChart动态地向XYSeries添加点

我在向XYSeries添加点时遇到问题.我有两节课.一个是Sample(它有一个main方法)而另一个是JfreeChart(它有JfreeChart代码).在我的Sample班级中,我有一个sample[row][2]最初有10行的2D数组,然后我需要调用JfreeChart该类并将它们添加到XYSeries并显示散点图.我设法做到了这一点,但下次我调用Jfreechart该类时,我的数组有25行.

我需要将值添加到XYSeries并在散点图上绘制它们,散点图应显示前面10行的不同颜色值,现在25行值不同颜色......这样就可以了.谁能提出一些建议或例子?

class Sample {

    public static void main(String args[]) {
        System.out.print("(X,Y) Paired Values");
        double[][] sample = new double[row][2];

        for (int g = 0; g < sampe.length; g++) {
            for (int h = 0; h < 2; h++) {
                System.out.print("" + sample[g][h] + ",");
            }
        }
        JfreeChart sample = new JfreeChart("Demo", sample);
    }

    static XYDataset samplexydataset2(double[][] sample) {
        XYSeriesCollection xySeriesCollection = new XYSeriesCollection();
        XYSeries …
Run Code Online (Sandbox Code Playgroud)

java jfreechart

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

如何在 jfreechart 的 XYPlot 中更改标记大小

在此问题的选定答案中,我想更改标记大小,我该怎么做?

X,Y轴设置范围-JfreeChart

java jfreechart

4
推荐指数
1
解决办法
5233
查看次数

如何为域和范围轴JFreeChart设置相同的比例


我想创建类似极点/零点的极点/零点图.它用于显示IIR和FIR滤波器属性,如稳定性,类型......

我的问题是:如何为两个轴设置相同的比例(不是范围)?
我使用ScatterPlot作为图表.

JFreeChart chart = ChartFactory.createScatterPlot("Pole/zero plot", // chart
                                                                        // title
            "real", // x axis label
            "imaginary", // y axis label
            result, // data
            PlotOrientation.VERTICAL, true, // include legend
            true, // tooltips
            false // urls
            );

XYPlot plot = (XYPlot) chart.getPlot();
plot.setDomainGridlinesVisible(true);
plot.setRangeGridlinesVisible(true);
plot.setRangeGridlinePaint(Color.black);
plot.setDomainGridlinePaint(Color.black);

XYLineAndShapeRenderer renderer = (XYLineAndShapeRenderer) plot.getRenderer();

renderer.setBaseItemLabelsVisible(true);
renderer.setBaseItemLabelsVisible(true, true);


plot.setDomainCrosshairVisible(true);
plot.setDomainCrosshairLockedOnData(true);
plot.setRangeCrosshairVisible(true);
plot.setRangeCrosshairLockedOnData(true);

float dash1[] = { 10.0f };
XYShapeAnnotation unitCircle = new XYShapeAnnotation(
    new Ellipse2D.Double(-1, -1, 2, 2), new BasicStroke(1.0f,
    BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER, …
Run Code Online (Sandbox Code Playgroud)

java plot axes jfreechart

0
推荐指数
1
解决办法
6930
查看次数

标签 统计

java ×6

jfreechart ×6

axes ×1

axis ×1

plot ×1

swing ×1