POMの設定は以下の通りです。
<dependency>
<groupId>org.jfree</groupId>
<artifactId>jfreechart</artifactId>
<version>1.0.19</version>
</dependency>
円チャートを作成してみる。
■public class Sample {
public static void main(String[] args) {
DefaultPieDataset data = new DefaultPieDataset();
data.setValue("アサヒ", 37);
data.setValue("キリン", 36);
data.setValue("サントリー", 13);
data.setValue("サッポロ", 12);
data.setValue("その他", 2);
JFreeChart chart = ChartFactory.createPieChart("Sample", data, true, false, false);
File file = new File("./chart.png");
try {
ChartUtilities.saveChartAsJPEG(file, chart, 500, 500);
} catch (IOException e) {
e.printStackTrace();
}
}
}
結果:
文字が正しく表示されていない。
■日本語を表示設定
public class Sample {
public static void main(String[] args) {
DefaultPieDataset data = new DefaultPieDataset();
data.setValue("アサヒ", 37);
data.setValue("キリン", 36);
data.setValue("サントリー", 13);
data.setValue("サッポロ", 12);
data.setValue("その他", 2);
//JFreeChart chart = ChartFactory.createPieChart("Sample", data, true, false, false);
JFreeChart chart = ChartFactory.createPieChart("Sample", data, true, false, Locale.JAPAN);
//タイトル設定
chart.setTitle(new TextTitle("サンプル", new Font("MS Mincho", Font.PLAIN, 24)));
PiePlot plot = (PiePlot)chart.getPlot();
plot.setLabelFont(new Font("MS Mincho", Font.PLAIN, 10));
//凡例設定
LegendTitle it = chart.getLegend();
it.setItemFont(new Font("MS Mincho", Font.PLAIN, 10));
File file = new File("./chart.png");
try {
ChartUtilities.saveChartAsJPEG(file, chart, 500, 500);
} catch (IOException e) {
e.printStackTrace();
}
}
}
結果:


0 件のコメント:
コメントを投稿