效果图(可以自适应窗口大小):
1、用到的jar包
yujianbo-java-tools-7.8.0.jar
jfreechart-1.0.19.jar
jcommon-1.0.23.jar
2、代码:
//通过窗口显示
JFrame jf = new JFrame();
//初始化JFrame常用属性
SwingService.initJFrame(jf, false, 400, 400,null, JFrame.EXIT_ON_CLOSE, true);
//关键性代码
DefaultCategoryDataset datasetBar1 = new DefaultCategoryDataset();
datasetBar1.addValue(100, "地球", "耕地");
datasetBar1.addValue(100, "火星", "耕地");
datasetBar1.addValue(100, "月球", "耕地");
datasetBar1.addValue(200, "地球", "高原");
datasetBar1.addValue(200, "火星", "高原");
datasetBar1.addValue(200, "月球", "高原");
datasetBar1.addValue(500, "地球", "湖泊");
datasetBar1.addValue(500, "火星", "湖泊");
datasetBar1.addValue(500, "月球", "湖泊");
datasetBar1.addValue(300, "地球", "高山");
datasetBar1.addValue(300, "火星", "高山");
datasetBar1.addValue(300, "月球", "高山");
datasetBar1.addValue(400, "地球", "丘陵");
datasetBar1.addValue(400, "火星", "丘陵");
datasetBar1.addValue(400, "月球", "丘陵");
jf.add(SwingService.getBarChart(3, datasetBar1, "我的柱状图", "分类", "占有量",PlotOrientation.VERTICAL,
true,
new Font("楷体",Font.BOLD,25),
new Font("楷体",Font.BOLD,25),
new Font("楷体",Font.BOLD,25),
new Font("楷体",Font.BOLD,25),
new Font("楷体",Font.BOLD,25)));
DefaultCategoryDataset datasetBar2 = new DefaultCategoryDataset();
datasetBar2.addValue(100, "耕地", "地球");
datasetBar2.addValue(100, "耕地", "火星");
datasetBar2.addValue(100, "耕地", "月球");
datasetBar2.addValue(200, "高原", "地球");
datasetBar2.addValue(200, "高原", "火星");
datasetBar2.addValue(200, "高原", "月球");
datasetBar2.addValue(500, "湖泊", "地球");
datasetBar2.addValue(500, "湖泊", "火星");
datasetBar2.addValue(500, "湖泊", "月球");
datasetBar2.addValue(300, "高山", "地球");
datasetBar2.addValue(300, "高山", "火星");
datasetBar2.addValue(300, "高山", "月球");
datasetBar2.addValue(400, "丘陵", "地球");
datasetBar2.addValue(400, "丘陵", "火星");
datasetBar2.addValue(400, "丘陵", "月球");
jf.add(SwingService.getBarChart(3, datasetBar2, "我的柱状图", "分类", "占有量",PlotOrientation.VERTICAL,
true,
new Font("楷体",Font.BOLD,30),
new Font("楷体",Font.BOLD,25),
new Font("楷体",Font.BOLD,20),
new Font("楷体",Font.BOLD,15),
new Font("楷体",Font.BOLD,10)
));