Я создал несколько диаграмм в соответствии с назначением и для анализа данных. Я хотел бы, чтобы ось домена масштабировалась по моим спецификациям, а не автоматически подбирала данные в каждом серии.не может получить доступ к методу setDomainAxis() в моем графике JFreeChart
Я нашел решение здесь, который, казалось, очень просто следовать: JFReeChart x axis scale
Однако, после того, как я создаю мой участок, с ниже код, кажется, что метод не существует.
Является ли метод setDomainAxis() тем, который включен в библиотеки, или мне нужно его самостоятельно создать? Или я нарушил какое-то фундаментальное правило java, которое не имеет никакого отношения к JFreeChart? Я начинающий Java-программист, поэтому, пожалуйста, сообщите свой ответ соответственно. Благодаря!
Вот мой класс графика XY:
public class XYPlot extends JFrame {
private String title;
private String xAxis;
private String yAxis;
private XYSeriesCollection dataset;
public XYPlot(String header, String graphTitle, String xax, String yax) {
super(header);
xAxis = xax;
yAxis = yax;
title = graphTitle;
XYPlot myPlot;
// dataset = dat;
}
public void setTit(String newTitle){
title = newTitle;
}
public void setXAxis(String X){
xAxis = X;
}
public void setYAxis(String Y){
xAxis = Y;
}
public void passData(XYSeriesCollection data){
dataset = data;
}
public void createChart(XYSeriesCollection dataIn){
final JFreeChart chart = ChartFactory.createXYLineChart(
title,
xAxis,
yAxis,
dataIn
);
final ChartPanel chartPanel = new ChartPanel(chart);
chartPanel.setPreferredSize(new java.awt.Dimension(1200, 800));
setContentPane(chartPanel);
}
А вот реализация сюжета в моей основной программе: использование
public static void seriesPlotter(XYSeriesCollection dataset, String title, String header, String xAxis, String yAxis) {
XYPlot myPlot = new XYPlot(header, title, xAxis, yAxis);
myPlot.createChart(dataset);
NumberAxis domain = new NumberAxis();
domain.setTickUnit(1);
myPlot.setDomainAxis(domain);
myPlot.pack();
myPlot.setVisible(true);
}
Если метод не существует, вы получите ошибку компилятора. Но метод находится в классе XYPlot. Возможно, сначала попробуйте установить setDomainAxis(), а затем createChart() ... – PeterMmm
@PeterMmm Ok! Я отдам его. Я написал класс XYPlot на основе учебников, которые были найдены на форумах JFreeChart и в других местах.Нигде я не могу найти образец того, как такой метод может быть создан, поэтому я предположил, что он был частью загрузки библиотеки. – rocksNwaves