我使用这种方法创建一个JFreeChart对象:
private JFreeChart createChart(XYDataset xydataset)
{
jfreechart = ChartFactory.createTimeSeriesChart("Server Throughtput", "Time", "Bytes/s", xydataset, true, true, false);
XYPlot xyplot = (XYPlot) jfreechart.getPlot();
ValueAxis valueaxis = xyplot.getDomainAxis();
valueaxis.setAutoRange(true);
valueaxis.setFixedAutoRange(60000D);
valueaxis = xyplot.getRangeAxis();
valueaxis.setRange(0.0D, 100D);
return jfreechart;
}
图表自动更新。我设置为最大值100D。过了一会儿,接收到的值超过100D。是否可以在运行时自动调整图形?
答案 0 :(得分:4)
调用valueaxis.setRange(0.0D, 100D)
会将自动范围标志设置为false。要使范围在valueaxis.setAutoRange(true)
valueaxis.setRange(0.0D, 100D)
自动更新来电valueaxis
在您的示例中,您重复使用DomainAxis
同时保留RangeAxis
和 XYPlot plot = (XYPlot) result.getPlot();
ValueAxis domainAxis = plot.getDomainAxis();
domainAxis.setAutoRange(true);
domainAxis.setFixedAutoRange(60000.0);
ValueAxis rangeAxis = plot.getRangeAxis();
rangeAxis.setAutoRange(true);
。此代码自动调整两个轴的范围:
{{1}}