1. 程式人生 > >JFreeChart簡單例子_建立柱狀圖(當遇到中文亂碼時,將各個部分的字型分別設定一下就行了)

JFreeChart簡單例子_建立柱狀圖(當遇到中文亂碼時,將各個部分的字型分別設定一下就行了)

      public static JFreeChart getChart(CategoryDataset dataset)
    {
        //此標題  ‘某社團各部門 ’將被後面的chart.setTitle的標題  ‘某社團各部門柱狀圖’ 覆蓋
        JFreeChart chart = ChartFactory.createBarChart("某社團各部門","部門名稱",
                "人員數量",dataset,PlotOrientation.VERTICAL,true,true,false);
        
        //設定柱狀圖 主標題的文字
        chart.setTitle(new TextTitle("某社團各部門柱狀圖",new Font("宋 體",Font.BOLD+Font.ITALIC,20)));
        
        //設定柱狀圖最下方說明的文字
        chart.getLegend().setItemFont(new Font("微軟雅黑",Font.BOLD,12));
  
        CategoryPlot plot = (CategoryPlot) chart.getPlot();
        
        CategoryAxis axis = plot.getDomainAxis();
        //設定X軸座標上標題的文字
        axis.setLabelFont(new Font("微軟雅黑",Font.BOLD,22));
        //設定X軸座標上的文字,
        axis.setTickLabelFont(new Font("微軟雅黑",Font.BOLD,12));
   
        ValueAxis valueAxis = plot.getRangeAxis();
        //設定Y軸座標上標題的文字
        valueAxis.setLabelFont(new Font("微軟雅黑",Font.BOLD,12));
        //設定Y軸座標上的文字
        valueAxis.setTickLabelFont(new Font("sans-serif",Font.BOLD,12));
        
         return chart;
    }
    
    public static JPanel createPanel()
    {
        JFreeChart chart = getChart(getDataset());
        
        return new ChartPanel(chart);
    }
    
    public static void main(String[] args)
    {
        JFreeChartTest2 chartFrame = new JFreeChartTest2("某社團各部門分佈圖");
        chartFrame.pack();
        chartFrame.setVisible(true);
    }
}