Java JFreeChart柱状图单组柱子的不同颜色显示.doc

上传人:灯火****19 文档编号:136109704 上传时间:2020-06-24 格式:DOC 页数:5 大小:42.50KB
返回 下载 相关 举报
Java JFreeChart柱状图单组柱子的不同颜色显示.doc_第1页
第1页 / 共5页
Java JFreeChart柱状图单组柱子的不同颜色显示.doc_第2页
第2页 / 共5页
Java JFreeChart柱状图单组柱子的不同颜色显示.doc_第3页
第3页 / 共5页
Java JFreeChart柱状图单组柱子的不同颜色显示.doc_第4页
第4页 / 共5页
Java JFreeChart柱状图单组柱子的不同颜色显示.doc_第5页
第5页 / 共5页
亲,该文档总共5页,全部预览完了,如果喜欢就下载吧!
资源描述

《Java JFreeChart柱状图单组柱子的不同颜色显示.doc》由会员分享,可在线阅读,更多相关《Java JFreeChart柱状图单组柱子的不同颜色显示.doc(5页珍藏版)》请在金锄头文库上搜索。

1、Java JFreeChart柱状图单组柱子的不同颜色显示JFreeChart柱状图中单组柱子用不同颜色来显示的实现方法是自定义一个Renderer来继承BarRenderer类,然后重载getItemPaint(int i,int j)方法。实现效果如下:实现代码如下:htmlview plaincopy1. publicclassCustomRendererextendsorg.jfree.chart.renderer.category.BarRenderer2. 3. /*4. *5. */6. privatestaticfinallongserialVersionUID=7846302

2、26449158436L;7. privatePaintcolors;8. /初始化柱子颜色9. privateStringcolorValues=#AFD8F8,#F6BD0F,#8BBA00,#FF8E46,#008E8E,#D64646;10. 11. publicCustomRenderer()12. colors=newPaintcolorValues.length;13. for(inti=0;icolorValues.length;i+)14. colorsi=Color.decode(colorValuesi);15. 16. 17. 18. /每根柱子以初始化的颜色不断轮循1

3、9. publicPaintgetItemPaint(inti,intj)20. returncolorsj%colors.length;21. 22. htmlview plaincopy1. publicclassCreateJFreeChartBarColor2. 3. /*4. *创建JFreeChartBarChart(柱状图)5. */6. publicstaticvoidmain(Stringargs)7. /步骤1:创建CategoryDataset对象(准备数据)8. CategoryDatasetdataset=createDataset();9. /步骤2:根据Datas

4、et生成JFreeChart对象,以及做相应的设置10. JFreeChartfreeChart=createChart(dataset);11. /步骤3:将JFreeChart对象输出到文件,Servlet输出流等12. saveAsFile(freeChart,E:bar.png,500,400);13. 14. 15. /保存为文件16. publicstaticvoidsaveAsFile(JFreeChartchart,StringoutputPath,intweight,intheight)17. FileOutputStreamout=null;18. try19. Fileo

5、utFile=newFile(outputPath);20. if(!outFile.getParentFile().exists()21. outFile.getParentFile().mkdirs();22. 23. out=newFileOutputStream(outputPath);24. /保存为PNG文件25. ChartUtilities.writeChartAsPNG(out,chart,weight,height);26. out.flush();27. catch(FileNotFoundExceptione)28. e.printStackTrace();29. ca

6、tch(IOExceptione)30. e.printStackTrace();31. finally32. if(out!=null)33. try34. out.close();35. catch(IOExceptione)36. /donothing37. 38. 39. 40. 41. 42. /根据CategoryDataset生成JFreeChart对象43. publicstaticJFreeChartcreateChart(CategoryDatasetcategoryDataset)44. JFreeChartjfreechart=ChartFactory.createBa

7、rChart(学生统计图,/标题45. 学生姓名,/categoryAxisLabel(category轴,横轴,X轴的标签)46. 年龄,/valueAxisLabel(value轴,纵轴,Y轴的标签)47. categoryDataset,/dataset48. PlotOrientation.VERTICAL,false,/legend49. false,/tooltips50. false);/URLs51. 52. FontlabelFont=newFont(SansSerif,Font.TRUETYPE_FONT,12);53. 54. jfreechart.setTextAnti

8、Alias(false);55. jfreechart.setBackgroundPaint(Color.white);56. 57. CategoryPlotplot=jfreechart.getCategoryPlot();/获得图表区域对象58. 59. /设置横虚线可见60. plot.setRangeGridlinesVisible(true);61. /虚线色彩62. plot.setRangeGridlinePaint(Color.gray);63. /数据轴精度64. NumberAxisvn=(NumberAxis)plot.getRangeAxis();65. /vn.se

9、tAutoRangeIncludesZero(true);66. DecimalFormatdf=newDecimalFormat(#0.0);67. vn.setNumberFormatOverride(df);/数据轴数据标签的显示格式68. 69. /x轴设置70. CategoryAxisdomainAxis=plot.getDomainAxis();71. domainAxis.setLabelFont(labelFont);/轴标题72. domainAxis.setTickLabelFont(labelFont);/轴数值73. /Lable(Math.PI/3.0)度倾斜74.

10、 /domainAxis.setCategoryLabelPositions(CategoryLabelPositions75. /.createUpRotationLabelPositions(Math.PI/3.0);76. domainAxis.setMaximumCategoryLabelWidthRatio(6.00f);/横轴上的Lable77. /是否完整显示78. 79. /设置距离图片左端距离80. domainAxis.setLowerMargin(0.1);81. /设置距离图片右端距离82. domainAxis.setUpperMargin(0.1);83. /设置c

11、olumnKey是否间隔显示84. /domainAxis.setSkipCategoryLabelsToFit(true);85. plot.setDomainAxis(domainAxis);86. /设置柱图背景色(注意,系统取色的时候要使用16位的模式来查看颜色编码,这样比较准确)87. plot.setBackgroundPaint(newColor(255,255,204);88. 89. /y轴设置90. ValueAxisrangeAxis=plot.getRangeAxis();91. rangeAxis.setLabelFont(labelFont);92. rangeAxis.setTickLabelFont(labelFont);93. /设置最高的一

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > IT计算机/网络 > 其它相关文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号