0

にアクセスして配置するにはどうすればよいXYSeriesですXYPlotJFrame? もちろん、変数名seriesおよびを使用できますplotが、私の質問は、これらのコンポーネントにアクセスする機能的な方法、つまりf.getContentPane()... これは、関数が を返す場合に役立ちますJFrame

JFrame f = new JFrame(title);
f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
f.setLayout(new BorderLayout(0, 5));
XYSeries series = new XYSeries("");
XYDataset data = createDataset(series,0,indf,oldpop);
JFreeChart chart = ChartFactory.createScatterPlot(title, xtitle, ytitle, data, PlotOrientation.VERTICAL, false, true, false);
XYPlot plot = chart.getXYPlot();
XYLineAndShapeRenderer renderer =
                (XYLineAndShapeRenderer) plot.getRenderer();
renderer.setBaseShapesVisible(true);          plot.getDomainAxis().setStandardTickUnits(NumberAxis.createIntegerTickUnits());
ChartPanel chartPanel = new ChartPanel(chart);
f.add(chartPanel, BorderLayout.CENTER);
chartPanel.setMouseWheelEnabled(true);
chartPanel.setHorizontalAxisTrace(true);
chartPanel.setVerticalAxisTrace(true);
JPanel panel = new JPanel(new FlowLayout(FlowLayout.RIGHT));
f.add(panel, BorderLayout.SOUTH);
4

1 に答える 1

2

ChartPanelJComponentレンダリングするものですJFreeChartXYSeriesとの両方XYPlotがコンポーネントであり、これらのオブジェクトは によって使用されJFreeChartます。これらはコンポーネントではないため、コンポーネント階層をたどってアクセスすることはできません。 と から取得する必要がChartPanelありJFreeChartます。

上記のコードと同じようにChartPanel、コンポーネント階層で検索し、オブジェクトgetChart()を取得するために使用して、そこから必要なオブジェクトを取得します。JFreeChart

XYPlot plot = chart.getXYPlot();
于 2013-04-23T10:27:00.123 に答える