Android开源图表库XCL-Charts版本号公布及展示页

XCL-Charts V2.1

        Android开源图表库(XCL-Charts is a free charting library for Android platform.)

        XCL-Charts基于原生的Canvas来绘制各种图表,在设计时,尽量在保证开发效率的同一时候,给使用者提供足够多的定制化能力。

因此使用简便,同一时候具有相当灵活的定制能力。
         眼下支持(3D/非3D,背向式)柱形图(Bar Chart)、3D/非3D饼图(Pie Chart)、堆叠图(Stacked Bar Chart)、面积图(Area Chart)、
 折线图(Line Chart)、曲线图(Spline Chart)、环形图(Dount Chart)、南丁格尔玫瑰图(Rose Chart)、仪表盘(Dial Chart)、刻度盘(Gauge Chart)、 雷达图(Radar Chart)、圆形图(Circle Chart)弧线比較图范围条形图(RangeBar Chart)气泡图(Bubble Chart)散点图(Scatter Chart)玫瑰风向图(Wind Rose)、象限图
等图表。
        其他特性还包含支持手势缩放、图表滑动、点击交互、动画效果、多XY轴显示、轴线随意方位显示、动态图例、图表參考线、混合图表及同数据源图表类型切换等。

License

      採用Apache v2 License开源协议。

GitHub上的代码托管地址:

 https://github.com/xcltapestry/XCL-Charts

  QQ群: 374780627

 开源中国的收录地址: http://www.oschina.net/p/xcl-charts


   为什么会有这个库?

         之所以有这个库,是由于前段时间学习Canvas时研究了一下各种图的实现方式,后面想想也许能够自己整理成一个图表库。 就利用下班时间写程序,形成了如今这个图表库XCL-Charts。非常麻烦,由于期间我还有别的项目要写。只是总算整理得能跑了。 

        所以XCL-Charts对我来说是个纯兴趣项目,纯练手用的,我眼下也不是搞Android的,所以在工作中也用不到这个。 但没想到的是,到今天为止,能做到如今这样的程度,已大大出乎我自己的预料了。仅仅能说,有时写代码是有惯性的,停都停不下来。


   关于库的一些东西:

    1.  基于原生的库

         之前看好多人是用Webview调用js库来绘图,而XCL-Charts是直接利用原生Canvas 相关函数画出图形,当然,这各有优点,

         但基于原生的在速度和可操作性还是有优势的,并且也无须你再去对web做啥研究。

    2 .  开放,自由,高定制性的库

                     XCL-Chart尽量把图的绘制逻辑封装在类中,而把绘制相关的各个基础元素开放出来,假设用过的人会发现,

           我分门别类开放了大量的Paint画笔类及其他函数, 供使用者去定制图的各种属性功能...... 

                     结果出现了这样的情况:非常多人问怎么找不到改文字大小的函数,改颜色的函数......之类问题。

                      亲们,没发现我把Android强大的Paint类都已经开放给你们了?里面有着大量现成的这些函数,有现成的我何必还要再封装一遍呢?

            同一时候我都把Paint类开放给你们了, 就相当于提供了无限的改造性。

打开枷锁,把那些封装弱弱的库丢一边去吧。 你要习惯拥有这么大的自由度, 自由非常美好。

       3.  库的设计想法

             有网友以前问过我一个问题, 这么多图,这么多代码,怎么没有看到继承哪个view? 仅仅传了个draw中的canvas进来??

                        是的,确实库仅仅传了一个canvas进来,那么多代码都是围着这个canvas来做的。 

                        由于我更偏向于做一个基类库,一个产生图表的引擎,而不是一个控件库。

           我觉得画图与view 应当做适当的隔离,让大家各自做各家的事,而不是混在一起纠缠不清。 

           假设图表须要作交互,响应一些view的事件,图库提供一些相关的接口给view去调用,或通过一些技巧再去相互组合,这样更加灵活。

           并且现有方式在处理混合图时,再多的图都能够调用图类,在同一块canvas上一层层的画。 对那种一个view封装一种图的形式真不太感冒。                       

      4. 库如今支持多少种图

               今天加函数时数了数,眼下大大小小有18种图。吃惊 。不知不觉弄出这么多种类的图出来了。

      5. 功能需求

                特殊功能需求,要是能自己动手的,大家自己动手吧。我通常仅仅加自己觉得有意思的东东,再说精力实在也有限。

      6.bug,代码抽取

                 发现bug,欢迎动手提交修正。  

                 但对于仅仅知道从库里抽代替码出来人。不要光索取,请记得还有回馈这回事。

       7.开源有没实用?

                 开源也有段时间了,究竟有没实用呢? 结论是实用,能收集到一堆的需求,五花八门,如今的app真是为了界面无所不用。 參考这些需求,能进一步

         完好这个项目。 但临时就真正用改bug,加功能等方式參与进来的,屈指可数。所以就写程序这个活而言,开源对我的帮助有,

         但没想象中的那么大。 只是无所谓了,这玩意本来就是自己图写个爽。

                对于真正实用代码方式參与的,我都有在代码和Demo的about中有写上他们的网名,确实非常感谢他们。 另一群兄弟有些由于各种原因

         没实际參与代码编写, 只是他们用其他方式也算參与进来了,非常多从開始到如今一直在关注,真的非常不错。这也算是开源的还有一种收获了。

           

    Demoproject中附带的部份图表样例:  

 技术分享技术分享技术分享技术分享技术分享 技术分享

 技术分享技术分享技术分享



        技术分享 技术分享 技术分享


         技术分享技术分享 技术分享             

技术分享技术分享技术分享


    技术分享   技术分享


   技术分享技术分享

   

   技术分享 技术分享

    

   

    技术分享技术分享  技术分享

   技术分享 技术分享 技术分享

    技术分享 技术分享 技术分享

  技术分享 技术分享 技术分享

    技术分享  技术分享技术分享

    技术分享 技术分享 技术分享 技术分享

 技术分享 技术分享

技术分享

 

 技术分享 技术分享 技术分享技术分享

   技术分享 技术分享


MAIL: [email protected]   【老被误会,这仅仅仅是一个邮箱帐号而已,尽管我想,但真不代表什么】

Blog:http://blog.csdn.net/xcl168


     



郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。