《excel几种简单常用图表》由会员分享,可在线阅读,更多相关《excel几种简单常用图表(7页珍藏版)》请在金锄头文库上搜索。
1、Excel几种简单常用的图表1、 柱状图(3D柱状图)doubledata=new double,;/柱状图数据Stringrows=new String,; /柱状图表示的含义Stringcolumns=new String,; /柱状图所区分的名字CategoryDataset dataset=DatasetUtilities.createCategoryDataset(rows, columns, data); /创建普通柱状图JFreeChart chart=ChartFactory.createBarChart(chartTitle, xName, yName, dataset,Pl
2、otOrientation.VERTICAL,true,false,false);/创建3D柱状图/*JFreeChart jc=ChartFactory.createBarChart3D(chartTitle,xName,yName, dataset, PlotOrientation.VERTICAL,true,false,false);*/设置图表字体是否模糊(true-模糊,false-不模糊)chart.setAntiAlias(false);/图片背景色chart.setBackgroundPaint(Color.white);/设置图标题的字体Font font=new Font(
3、隶书,Font.BOLD,25);/重新设置titleTextTitle title=new TextTitle(chartTitle);title.setFont(font);chart.setTitle(title);/为图表设置柱子CategoryPlot plot=chart.getCategoryPlot();/设置柱子横虚线可见plot.setRangeGridlinesVisible(true);/设置柱子虚线颜色plot.setRangeGridlinePaint(Color.gray);/数据轴精度NumberAxis na=(NumberAxis)plot.getRange
4、Axis();/数据轴数据标签的显示格式DecimalFormat df=new DecimalFormat(#0.00);na.setNumberFormatOverride(df);/设置X、Y轴标签字体Font labelFont=new Font(SansSerif,Font.TRUETYPE_FONT,12);/X轴设置CategoryAxis domainAxis=plot.getDomainAxis();domainAxis.setLabelFont(labelFont);domainAxis.setTickLabelFont(labelFont);/横轴上的Label是否完全显
5、示domainAxis.setMaximumCategoryLabelWidthRatio(0.6f);/设置图片左端距离domainAxis.setLowerMargin(0.1);/设置图片右端距离domainAxis.setUpperMargin(0.1);plot.setDomainAxis(domainAxis);/设置柱图背景色plot.setBackgroundPaint(new Color(255,255,204);/Y轴ValueAxis rangeAxis=plot.getRangeAxis();rangeAxis.setLabelFont(labelFont);range
6、Axis.setTickLabelFont(labelFont);/设置最高的一个Item与图片顶端的距离rangeAxis.setUpperMargin(0.15);/设置最低的一个Item与图片底端的距离rangeAxis.setLowerMargin(0.15);plot.setRangeAxis(rangeAxis);/柱子的具体设置BarRenderer renderer=new BarRenderer();/设置柱子宽度renderer.setMaximumBarWidth(0.05);/设置柱子高度renderer.setMinimumBarLength(0.2);/设置柱子边框
7、颜色renderer.setBaseOutlinePaint(Color.black);/设置柱子颜色/*renderer.setSeriesPaint(0, new Color(204,255,255);renderer.setSeriesPaint(1, new Color(153,204,255);renderer.setSeriesPaint(2, new Color(51,204,204);*/设置每个地区所包含的平行柱之间的距离renderer.setItemMargin(0.0);/显示每个柱子的数值并修改该数值的字体属性renderer.setIncludeBaseInRang
8、e(true);renderer.setBaseItemLabelGenerator(new StandardCategoryItemLabelGenerator();renderer.setBaseItemLabelsVisible(true);plot.setRenderer(renderer);/设置柱的透明度plot.setForegroundAlpha(1.0f);chart.getLegend().setItemFont(new Font(黑体, Font.BOLD, 15);2、 堆积柱状图(3D堆积柱状图)doubledata=new double,;/柱状图数据Stringr
9、ows=new String,; /柱状图表示的含义Stringcolumns=new String,; /柱状图所区分的名字CategoryDataset dataset=DatasetUtilities.createCategoryDataset(rows, columns,data);JFreeChart chart=ChartFactory.createStackedBarChart(chartTitle,xName, yName,dataset,PlotOrientation.VERTICAL,true,false,false);/图表字体清晰chart.setAntiAlias(f
10、alse);/图表背景颜色chart.setBorderPaint(Color.WHITE);/设置图表标题chart.setTitle(new TextTitle(chartTitle,new Font(隶书,Font.BOLD,25);/X、Y轴字体Font labelFont=new Font(SansSerif,Font.TRUETYPE_FONT,12);CategoryPlot plot=chart.getCategoryPlot();/设置横虚线可见plot.setRangeGridlinesVisible(true);/设置横虚线色彩plot.setRangeGridlineP
11、aint(Color.gray);/数据轴精度NumberAxis na=(NumberAxis)plot.getRangeAxis();/设置最大值是1na.setUpperBound(1);/设置数据格式是百分比DecimalFormat df=new DecimalFormat(0.00%);na.setNumberFormatOverride(df);/X轴CategoryAxis domainAxis=plot.getDomainAxis();domainAxis.setLabelFont(labelFont);domainAxis.setTickLabelFont(labelFon
12、t);/横坐标的label是否完全显示domainAxis.setMaximumCategoryLabelWidthRatio(0.6f);plot.setDomainAxis(domainAxis);/Y轴ValueAxis va=plot.getRangeAxis();va.setLabelFont(labelFont);va.setTickLabelFont(labelFont);va.setUpperMargin(0.15);va.setLowerMargin(0.15);plot.setRangeAxis(va);/Renderer图形绘制单元StackedBarRenderer r
13、enderer=new StackedBarRenderer();/设置柱子宽度renderer.setMaximumBarWidth(0.05);/设置柱子的高度renderer.setMinimumBarLength(0.1);/设置柱子的边框颜色renderer.setBaseOutlinePaint(Color.BLACK);/设置柱子的边框可见renderer.setDrawBarOutline(true);/设置柱的颜色/*renderer.setSeriesPaint(0, new Color(204,255,204);renderer.setSeriesPaint(1, new
14、 Color(255,204,153);*/设置每个地区所包含的平行柱之间的距离renderer.setItemMargin(0.4);plot.setRenderer(renderer);chart.getLegend().setItemFont(new Font(黑体, Font.BOLD, 15);3、 饼图(3D饼图)doubledata=,;Stringkeys=,;DefaultPieDataset dataset=new DefaultPieDataset();if(data!=null&keys!=null)if(data.length=keys.length)for(int i=0;idata.length;i+) dataset.setValue(keysi, datai);/*DefaultPieDataset dataset = new DefaultPieDataset();dataset.setValue(, new Double();dataset.setValue(, new Double();.dataset.setValue(, new Double();*/JFreeChart chart = ChartFactory.create