を使用してJFreeChart 1.0.14
います。プロットが小さすぎる/大きすぎると、軸のラベルが非常に奇妙に伸びます。その動作をオフにして、軸ラベルを常に同じ幅:高さの比率で印刷したいと考えています。
SSCCE は次のとおりです。
import java.awt.BorderLayout;
import javax.swing.JFrame;
import org.jfree.chart.ChartFactory;
import org.jfree.chart.ChartPanel;
import org.jfree.chart.JFreeChart;
import org.jfree.chart.plot.PlotOrientation;
import org.jfree.data.xy.XYSeries;
import org.jfree.data.xy.XYSeriesCollection;
public class Main {
public static void main(String[] args) {
JFrame frame = new JFrame();
frame.setLayout(new BorderLayout());
XYSeries series = new XYSeries("series a");
for (int i = 0; i < 100; i++)
series.add(i, Math.sin(i / 2.0) * Math.cos(i / (2.0 + Math.random())));
XYSeriesCollection dataset = new XYSeriesCollection(series);
JFreeChart chart = ChartFactory.createXYLineChart("", "x-axis", "y-axis", dataset, PlotOrientation.VERTICAL, false, false, false);
ChartPanel panel = new ChartPanel(chart);
frame.add(panel, BorderLayout.CENTER);
frame.setSize(400, 200);
frame.setLocationRelativeTo(null);
frame.setVisible(true);
}
}
でマークされた出力が生成されますOK
。フレームのサイズをいずれかの方向に一定量変更すると、軸ラベル (および目盛りラベル) が歪み始めます ( でマークされた 2 つのフレームでわかるようにstretched
)。そして、それらの「ストレッチ係数」が同期されます。
この「機能」を無効にして、軸ラベルを常に固定の幅:高さの比率で表示する方法がわかりません。これを行う方法を知っていますか?