我正在创建一个GUI,用于读取和绘制从串行端口接收的信息。我正在努力简化用户的工作。读取和绘图工作正常,但是,遇到问题很容易让用户改变y轴的范围。我知道这可以完成,但右键单击并浏览属性,但我正在尝试实现一个文件 - >在JMenu中设置范围选项。
我的问题是,如何保存用户输入并让它更新图表属性中的“最大范围值”。谢谢你的帮助。
我也尝试过get / set方法,但它只会在首次创建图表时在开头设置最大y值,如果用户更改了范围,则不会更改值。下面的代码是我尝试实现get / set方法的方法。
public JFreeChart createChart(XYDataset dataset) {
JFreeChart result = ChartFactory
.createTimeSeriesChart("Keyence LS-5001", "Time", "Value",
dataset, false, true, false);
final XYPlot plot = result.getXYPlot();
ValueAxis axis2 = plot.getDomainAxis();
axis2 = plot.getDomainAxis();
axis2.setAutoRange(true);
axis2.setFixedAutoRange((XYRange.getXmax()));
axis2 = plot.getRangeAxis();
axis2.setRange(0.0, XYRange.getYmax());
return result;
答案 0 :(得分:0)
首先,确保修改所需的轴。 JFreeChart通常使用域轴表示X,范围轴表示Y(在此post中更多关于此的评论)。识别后,只需调用其setRange方法即可。不要为轴设置任何自动量程。