Xchart 源码分析(1)

   学校课程需要找一份代码,来讲讲代码里面用了哪些设计模式- -! 还是要java的。。。 于是上github上面翻代码,偶然翻到一个java的xchart图标库,感觉可能以后会用的到,而且代码不是很长,就直接拿过来用了。具体的链接地址如下:https://github.com/timmolter/XChart

  先看文件夹结构:
image          

一共有6个包,最后一个是用来测试的包,可以忽略不计,一共5个包,5个包的作用分别是  

  • com.xeiam.xchart:
    主要是图表生成的代码以及一些图表的功能包括导出功能的代码,是给我们使用该jar包人调用的结构,表示的是一个图表整体的构造,包括Chart,ChartBuild,Series等类。
    image    
  • com.xeiam.xchart.internal
    这个package里面只有两个类,一个是package-info,我也不是很明白他的作用。。。就是写了一个license的地址。另一个类是Utils的类,提供了两个静态方法,一个求幂的,一个就是求差值的一半。     
  • com.xeiam.xchart.internal.chartpart
    这个包里面的东西,都是一些绘图的基本元素,全部是从chartpart中继承过来的,利用组合模式来进行绘制和构造,主要包括Axis,chartTitle,legend,plot等基本图表的元素。
    image        
  • com.xeiam.xchart.internal.markers
    这个包里面,主要是针对刻度的一些绘图,包括圆形,矩形,上下三角形,菱形等。
    image         
  • com.xeiam.xchart.internal.style
    这个类主要是针对图表的一系列的外观进行定义的包,给出了几个主题,以及对于线的一些类型外观的设置。
    image           

作为一个轻量级的图表库,xchart通过这几个包里面的类进行图像的构造,最终画出一个图形出来,不过目前只能支持有限的几种图表类型。