我创建了一个jfrechart作为第一张照片。用鼠标滚轮缩放后,显示为第二张照片。如何调整ChartPanel的大小以便显示所有缩放图表?
我将ChartPanel放在JScrollPane中,并在其mouseWheelMoved事件中更新其首选大小,如下所示。它没有像我预期的那样工作。它没有显示整个图表,轴的字体大小也被放大到不合适的大小。
public void mouseWheelMoved(MouseWheelEvent e) {
double factor = _chartPanel.getZoomInFactor();
Dimension dim = _chartPanel.getPreferredSize();
dim.width =(int)( dim.width*(1.0+factor)+1);
_chartPanel.setDomainZoomable(false);
_chartPanel.setPreferredSize(dim);;
_chartPanel.revalidate();
_chartPanel.setDomainZoomable(true);
}