前段时间,项目组有个业务需求,需要生成财务分析图表,开始采用的是FushionChart,因为这个简单,效果好看,功能也够强大,上线后不久,遇到了一个问题,就是用户需要将图表打印出来,没有彩色打印机,只有黑白打印机,所以光靠颜色来区分就很困难了。业务需求的老大对Excel挺熟的,他在Excel中画的图表是可以使用纹理填充的,黑白打印效果完全没问题。
没有FunshionChart的源码,没办法改人家的东西,于是就找来了JFreeChart,可是这家伙好像也不支持使用纹理填充,网上搜了N久也没有现成的,倒是有和我们一样需求的人在问。没办法,只能自己先研究看看了,通过几天的百度,对JFreeChart有了大概的了解,知道了TexturePaint可以用来填充纹理,知道了BarRenderer可以对柱状图表进行修饰,通过代码跟踪,测试,终于试验成功了。
主要代码如下,供有需要的人参考:
没有FunshionChart的源码,没办法改人家的东西,于是就找来了JFreeChart,可是这家伙好像也不支持使用纹理填充,网上搜了N久也没有现成的,倒是有和我们一样需求的人在问。没办法,只能自己先研究看看了,通过几天的百度,对JFreeChart有了大概的了解,知道了TexturePaint可以用来填充纹理,知道了BarRenderer可以对柱状图表进行修饰,通过代码跟踪,测试,终于试验成功了。
主要代码如下,供有需要的人参考:
运行效果如下图: