java生成柱状图

生成柱状图

代码如下:

public class BarChart {

//1-写一个ChartPanel变量

ChartPanel jframe;

//2-BarChart的无参数的构造方法

public BarChart() {

DefaultCategoryDataset data=(DefaultCategoryDataset) getDataSet();

JFreeChart chart=ChartFactory.createBarChart3D(

"水果销售数据统计", //图表标题

"水果种类",//目录轴的显示标签

"数量",//数值轴的显示标签

data,

PlotOrientation.VERTICAL, //图表方向 水平 垂直

true, //是否显示图例(对于简单的图表建议显示图例)

false,//是否生成工具

false); //是否生成网址链接

//字体设置

//获得图表区域对象

CategoryPlot plot=chart.getCategoryPlot();

//水平底部列表

CategoryAxis domain =plot.getDomainAxis();

//垂直标题字体设置

domain.setTickLabelFont(new Font("黑体", Font.BOLD, 16));

//水平底部标题设置

domain.setLabelFont(new Font("黑体", Font.BOLD, 20));

//获取柱状体

ValueAxis rangeAxis=plot.getRangeAxis();

rangeAxis.setLabelFont(new Font("黑体", Font.BOLD, 16));

//设置lengend字体

chart.getLegend().setItemFont(new Font("黑体", Font.BOLD, 16));

chart.getTitle().setFont(new Font("黑体", Font.BOLD, 16));

//初始化Jframe

jframe=new ChartPanel(chart);



}


//3-图表数据设置

public static CategoryDataset getDataSet() {

DefaultCategoryDataset data=new DefaultCategoryDataset();

//设置数据

data.setValue(100, "北京", "苹果");

data.setValue(70, "北京", "香蕉");

data.setValue(60, "北京", "西瓜");

data.setValue(20, "上海", "苹果");

data.setValue(100, "上海", "香蕉");

data.setValue(100, "上海", "西瓜");

data.setValue(100, "广州", "苹果");

data.setValue(100, "广州", "香蕉");

data.setValue(100, "广州", "西瓜");

return data;

}

//4-返回一个ChartPanel

public ChartPanel getPanel() {

return jframe;

}

}

调用的测试类的代码如下:

public class Test {

public static void main(String[] args) {

JFrame j=new JFrame();

JDialog jd=new JDialog();

jd.setBounds(50, 50, 600, 600);

jd.add(new BarChart().getPanel());

jd.setVisible(true);

}

}

效果图如下:

发表评论
留言与评论(共有 0 条评论) “”
   
验证码:

相关文章

推荐文章