精华内容
下载资源
问答
  • XCL-Charts

    2017-05-08 11:04:31
    XCL-Charts
  • XCL-Charts.jar资源包

    2015-06-10 10:22:59
    XCL-Charts图表控件的资源包,非常强大
  • XCL-Charts图表库

    2015-06-10 23:49:02
    XCL-Charts图表库
  • 相当全,相当不错的例子 android 图表各种XCL-Charts-master.rar,太多无法一一验证是否可用,程序如果跑不起来需要自调,部分代码功能进行参考学习。
  • 基于xcl-charts.jar的3d柱形图。
  • XCL-Charts 开源图表库

    2017-09-07 10:11:24
    Android开源图表库(XCL-Charts is a free charting library for Android platform.)  XCL-Charts基于Android原生Canvas来绘制各种图表,使用简便,定制灵活。  目前支持(3D/非3D,背向式)柱形图(Bar Chart)、3D/非3D...
  • XCL-Charts V1.3  Android开源图表库(XCL-Charts is a free charting library for Android platform.)  XCL-Charts基于原生的Canvas来绘制各种图表,在设计时,尽量在保证开发效率的同时,给使用者提供足够...

    XCL-Charts V1.3

            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)
    等图表。
            其它特性还包括支持图表缩放、手势移动、点击响应、动画显示效果、高密度柱形显示、图表分界定制线、
     多图表的混合显示及同数据源不同类型图表切换
    等。


    License

          采用Apache v2 License开源协议。


    开源中国上的代码托管地址:

    https://git.oschina.net/xclcharts/XCL-Charts


    开源中国项目地址:

     http://www.oschina.net/p/xcl-charts


    GitHub上的代码托管地址:

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


      开源中国与GitHub都会同步更新.


    对在Android上用Canvas画图表感兴趣的,可以关注下。

             之所以有这个库,是因为前段时间学习Canvas时研究了一下各种图的实现方式,后面想想或许可以自己整理成一个图表库。 就利用下班时间敲代码,形成了现在这个图表库XCL-Charts。很麻烦,因为期间我还有别的项目要写。不过总算整理得能跑了。

        之前看好多人是用Webview调用js库来画图,而XCL-Charts是直接利用Canvas 相关函数画出图形,各有好处。

        XCL-Chart尽量把图的绘制逻辑封装在类中,而把绘制相关的各个基础元素开放出来,目的是在保证开发效率的同时,给使用者足够多的定制化能力。 


        Demo工程中附带的部份图表例子:  

      

     



                  


              


             


          

           

          

          


                    

          

            


           


       

       

        

        

        

          

         

    原文链接:http://blog.csdn.net/xcl168/article/details/29675613

    展开全文
  • https://github.com/xcltapestry/XCL-Charts XCL-Charts ...XCL-Charts V2.4 ...Android开源图表库(XCL-Charts is a free charting library for ... XCL-Charts基于Android原生Canvas来绘制各种图表,使用简便,

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

    XCL-Charts

    XCL-Charts V2.4
    Android开源图表库(XCL-Charts is a free charting library for Android platform.) 
        XCL-Charts基于Android原生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)、弧线比较图、散点图(Scatter Chart)、气泡图(Bubble Chart)、范围条形图(RangeBar Chart)、玫瑰风向图(Wind Rose)、象限图(Quadrant chart)、漏斗图(Funnel Chart)等图表。
        其它特性还包括手势缩放、图表滑动、点击交互、多图叠加、图表批注、动画效果、多XY轴显示、轴线任意方位显示、动态图例、图表参考线、柱图刻度对齐风格切换、混合图表及同数据源图表类型切换等。

    License
    采用Apache v2 License开源协议。

    Mail: xcl_168@aliyun.com 
    Blog: http://blog.csdn.net/xcl168 
    QQ群: 374780627 
    GitHub代码托管地址: https://github.com/xcltapestry/XCL-Charts 

    图表库简要教程 http://blog.csdn.net/xcl168/article/details/42318669 

    部份例图:

      

      

       

      

      

      

      

      

      

      

      

                  


    展开全文
  • XCL-Charts android 图表

    千次阅读 2015-01-27 14:00:58
    [置顶] XCL-Charts图表库简要教程及常见问题 分类: XCL-Charts2015-01-01 20:43 486人阅读 评论(1) 收藏 举报 android图表库XCL-Chartsandroid chartsandroid图表xclcharts 本文转自:...
     

    [置顶] XCL-Charts图表库简要教程及常见问题

    分类: XCL-Charts   486人阅读  评论(1)  收藏  举报

    本文转自:http://blog.csdn.net/xcl168/article/details/42318669

           这个Andriod图表库项目从开始至现在,热情消耗几近殆尽。还好已基本实现我想做的那些东西。趁还剩下点兴趣,把一些点非常简单的归纳一下。

          

    所支持的图表类型:

       基类                            图表名称

       BarChart                横/竖向柱形图及背向式柱形图

       BarChart3D           横/竖向3D柱形图

       StackBarChart      横/竖向堆叠式柱形图

       RangeBarChart    范围柱形图  

        LineChart        折线图

       SplineChart      曲线图

       AreaChart         区域图(折线/平滑)

       PieChart           饼图

       PieChart3D     3D饼图

       DountChart      环形图

       ArcLineChart   弧线比较图

       RoseChart       南丁格尔玫瑰图/玫瑰风向图

       FunnelChart    漏斗图

       CircleChart      圆/半圆图

       BubbleChart    气泡图

       RadarChart     雷达图

       GaugeChart    刻度盘

       ScatterChart    散点图

       DialChart         仪表盘





     主要组成(附注:很多命名都是我自己乱命名的,专业的不用太较真,能实现效果就好。)

    图表范围:

        即图中蓝色渐变背景所在的范围。

       设置函数:

       setChartRange(float width, float height)
       setChartRange(float startX, float startY, float width, float height)    

       

    绘图区:

       图中黄色部分的范围。

       可用下面函数设置绘图区与整个图表范围的缩收间距:

       setPadding(float left, float top, float right, float bottom)   

       getPlotArea()

       如数据量太多,屏幕显示不下时,可通过getPlotArea().extWidth()来扩大范围,通过手势滑动来查看。

        

    标题栏:

       分主标题与子标题

       部份函数:

       setTitle(java.lang.String title)
       addSubtitle(java.lang.String subtitle)


    坐标轴:

    轴分两种数据轴与分类轴,轴可以显示在上下左右中位置,或依数据值显示在任意位置。

       引用函数:

      getDataAxis()
      getCategoryAxis()


    轴标题:

         可设置上下底部三个部份的标题

         引用函数:

    getAxisTitle()


    图例:

       可设置成行或列模式,并显示在图表中任意位置。

       部份函数:

        getPlotLegend()


    动态图例:

       可以做各种图表说明的补充。

      引用函数:

       getDyLegend()

        

    定制线

       用于做各种标示或分界线。

       设置函数:

       setCustomLines()


    图批注

       用于在显示时,在图表指定元素上特别标识时使用。

       设置函数:

       setAnchorDataPoint()


    焦点框

       在点击选中时,标识出当前选中项。

       激活函数:

        showClikedFocus();


    焦点线(动态线):

      用于在点击时显示相关的十字线等其它标识线。

       showDyLine() 激活。

       getDyLine()   获取相关对象。


    图表缩放:

       disableScale()  禁用

       enabledScale() 启用


    手势滑动

       disablePanMode() 禁用

       enabledPanMode() 启用

       setPlotPanMode() 设置滑动模式(上下/左右/任意方向)


    常见问题:

     1.  没找到设置颜色的函数.

           找到相关子类的画笔,自行设置颜色即可。

          如设置轴线的颜色: 

                    chart.getDataAxis().getAxisPaint().setColor(Color.BLUE);


     2. 字体大小没有随着屏幕大小变化

          自行依屏幕大小设置相关子类画笔的字体大小即可.

          如,设置图表主标题字体大小:

               chart.getPlotTitle().getTitlePaint().setTextSize(22);


     3. 隐藏轴线或轴上的刻度/标签

              以数据轴为例:

           chart.getDataAxis().hideAxisLine();
    chart.getDataAxis().hideTickMarks();
    chart.getDataAxis().hideAxisLabels();

             分类轴同理.


    4. 如何设置轴或图表对象上的显示格式:

              图库有提供相关回调函数,自行实现即可.

              一个简单的例子代码:           

    [java]  view plain copy 在CODE上查看代码片 派生到我的代码片
    1. //定义数据轴标签显示格式  
    2.             chart.getDataAxis().setLabelFormatter(new IFormatterTextCallBack(){  
    3.       
    4.                 @Override  
    5.                 public String textFormatter(String value) {  
    6.                     // TODO Auto-generated method stub        
    7.                     Double tmp = Double.parseDouble(value);  
    8.                     DecimalFormat df=new DecimalFormat("#0");  
    9.                     String label = df.format(tmp).toString();                 
    10.                     return (label);  
    11.                 }  
    12.                   
    13.             });  
         其它依此类推。


      5. 如果从Activity向view中的图传值,刷新

           一个简单的同时刷新两个曲线图的例子:          

    [java]  view plain copy 在CODE上查看代码片 派生到我的代码片
    1. Activity:  
    2.    chartView.refreshChart(linePoint1, linePoint2);        
    3. View:  
    4.    public void refreshChart( List<PointD> linePoint1,  
    5.                              List<PointD> linePoint2){  
    6.           
    7.         dataSeries1.setLineDataSet(linePoint1);  
    8.         dataSeries2.setLineDataSet(linePoint2);  
    9.         this.invalidate();  
    10.     }  
             

      6. 双Y轴怎么处理

          多图叠加即可。参考下Demo中的混合图例子。


      7. 需要柱形图与折线图合在一起显示 

        多图叠加即可。参考下Demo中的混合图例子。


     8. 需要特别标识某一个点或值

        使用图批注即可。


    9. 需要显示这种或那种动画效果

        可参考Demo中一些例子的动画,如渐显,由远及近等来自己实现,也可调用第三方库来做。


    10. 能否设置柱形宽度

       柱形大小是依绘图区宽度及柱形个数自动设置的,不能显式指定。


    11. 图表移出绘图区范围不见了。

        目前是任意移动,可使用hscrollview来做。可参考相关例子

      

    12. 数据量很大,滑动时速度慢

          如不需点击和缩放效果,可使用hscrollview来做,否则可使用disableHighPrecision()来提高性能。

       但这个函数饼图类图表慎用。


    13. 怎么在Activity中,得到图表的点击对象和相关值

         可参考Demo,有相关演示。


    14. 温度计轴/不等距轴怎么做?

         XCL-Charts目前不支持,但幸好大S写了一个经典实现,在网友图表库目录下。


    15. 区域图有没渐变效果。

          有,可指定渐变起始和结束色,从上到下或从左至右渐变。


    16. 图例要显示在下方或左右。

         有相关函数,直接设置即可。Demo中有相关例子。


    17. 有个轴要显示在顶部

        有相关属性,直接设置即可。Demo中有相关例子。


    18. 折线图左右滑动的例子

         两个View,一个view用于显示Y轴,图标题,图例,另一个用于显示scrollview及图表。


     19. Y轴标题显示在顶部,X轴标题显示在右下

         两种方式,要么参考Demo中“竖向定制线柱形图"例子的做法。

          要么在view的render()中,通过 chart.getPlotArea().getLeft()及chart.getPlotArea().getTop()等函数得到相关坐标,

         直接drawText即可。


     20. 点击时选中不够灵敏,怎么办?

        利用extPointClickRange(10); 扩大选中范围即可。


    21.手势移动时,轴标签已移出绘图区范围了仍显示。

              有提供相关函数来控制,移出后的显示范围,以X方向为例:

                         //平移时收缩下
    float margin = DensityUtil.dip2px(getContext(), 20);
    chart.setXTickMarksOffsetMargin(margin);

          Y方向依上例类推。


    22. 饼图标签折线从扇区边上起始延伸出来。

           直接设置折线线起始点即可。chart.getLabelBrokenLine().setBrokenStartPoint(10f); 值为0-10的比例。


    23. 饼图标签和线与扇区要相同颜色.

         chart.syncLabelLineColor()即可。


    24. 饼图数据传进去有空隙或不显示?

       Java的float和double类型在计算时会有误差。造成圆心角合计小于或超出360度。

        建议调用库中的Mathhelper类中的相关函数来做计算处理。


    25. 饼图标签太密,看不清。

            太密集的标签不重叠的处理算法还没兴趣去研究, 但库已提供了5,6种标签显示风格。建议不同扇区依角大小错开,

      并不同扇区指定不同标签显示风格来处理。


    26.我需要多图同步,并定时刷新数据。

        Demo中有,可参考双线图的例子。


    27. 从哪可以下载源码

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

    展开全文
  • Android开源图表库XCL-Charts版本发布及展示页

    万次阅读 多人点赞 2014-06-12 00:16:50
    XCL-Charts图表库基于Android原生Canvas来绘制各种图表,使用简便,定制灵活。 目前支持3D/非3D柱形图(Bar Chart)、3D/非3D饼图(Pie Chart)、堆叠图(Stacked Bar Chart)、面积图(Area Chart)、 折线图(Line Chart)、...

    XCL-Charts V2.4

            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)、漏斗图(Funnel Chart) 象限图
    等图表。

            其它特性还包括支持手势缩放、图表滑动、点击交互、多图叠加、图表批注、动画效果、多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中有写上他们的网名,确实很感谢他们。 还有一群兄弟有些因为各种原因

             没实际参与代码编写, 不过他们用其它方式也算参与进来了,很多从开始到现在一直在关注,真的很不错。这也算是开源的另一种收获了。

               

        Demo工程中附带的部份图表例子:  

       

      

     



               


                           


           


       

       

       

        

       

          

         

          

       

          

           

      

     

       

         

            

         

           





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


         



    展开全文
  • 因为要做图表相关的应用,后来百度发现了一个很好的Android开源图表库(XCL-Charts is a free charting library for Android platform.)  下面内容转载于:http://blog.csdn.net/xcl168/article/details/29675613,...
  • XCL-Charts V2.1 ... XCL-Charts基于原生的Canvas来绘制各种图表,在设计时,尽量在保证开发效率的同一时候,给使用者提供足够多的定制化能力。 因此使用简便,同一时候具有相当灵活的定制能...
  • Android图表库XCL-Charts

    2015-05-02 08:09:00
    首先,这个是国人开发的,支持下必须顶!...Android图表库(XCL-Charts is a free charting library for Android platform.),基于Android Canvas来绘制各种图表,使用简便,定制灵活。目前支持3D/非3D/背向式/横...
  • XCL-Charts强大的仪表盘

    千次阅读 2014-08-10 12:29:12
    XCL-Charts中的仪表盘是我封装的最麻烦的图之一。原因嘛,用过的人都知道,这类图太有特色了,要弄出一个适用于大部份情况的封装出来实在不容易。 还好,经过一翻折腾,总算搞出来一套自已感觉还行的方法。  先展示...
  • XCL-Charts-master.zip

    2015-09-08 22:29:54
    这个工具就不用多说了,开源的,详情请看: http://blog.csdn.net/xcl168/article/details/29675613
  • XCL-Charts定制多柱形堆积图

    千次阅读 2014-07-13 22:08:10
    有网友发了张图,问我实现的方法。 与一般的柱形图不一样,这张图很特别,相信他要找到现成的,对得上号的图表将不是件易事。 通常图表库实现的不是通常意义上的柱形图,就是单纯的堆积... 利用XCL-Charts实现的效果图:
  • 样本区域地图,发现区域图的时候把做向上注视位置图更具优势的管理。在改变。 区域图网格和轴是不一样的处理与其它图, ... * Copyright 2014 XCL-Charts * * Licensed under the Apache License, Ve...
  • 样本区域地图,发现区域图的时候把做向上注视位置图更具优势的管理。在改变。 区域图网格和轴是不一样的处理与其它图, ... * Copyright 2014 XCL-Charts * * Licensed under the Apache License, Version...
  • 柱形图是被使用最多的图之一,在写XCL-Charts这个Android图表库时,为它花费的时间相当多,不是因为有多难绘制,而是要在设计时如何才能保证图基类能适应各种情况,能灵活满足足够多的需求,以及够简洁的接口,并要...
  • XCL-Chartsv0.1Android开源图表库,基于原生的Canvas来绘制各种图表。目前支持3D/非3D柱形图、3D/非3D饼图、堆叠图、面积图、折线图、曲线图、环形图、南丁格尔玫瑰图、仪表盘、圆形图等等,并支持图表的混合显示及同...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 833
精华内容 333
关键字:

XCL-Charts