美文网首页开源库挖掘&推荐
安卓图表万金油MPAndroidChart

安卓图表万金油MPAndroidChart

作者: 5afd372c86ba | 来源:发表于2017-09-02 12:26 被阅读57次
    名称 MPAndroidChart
    语言 Android
    平台 GitHub
    作者 PhilJay
    链接 点此进入

    安卓日常开发中,用到图表的场景还是比较少,但是偶尔还是会遇到,这个时候很多人会觉得茫然,我要自己写还是去找第三方库?第三方库去哪找?第三方库能不能支撑我的需求?别急,今天小编给大家介绍一款安卓图表万金油,支持多种图表样式,包括曲线图、折线图、柱状图,水平柱状图、扇形图、散射图、烛柱图、K线图、气泡图、雷达图等等,简直不要太多,基本日常需要或不需要的都包括了。 以下为大概图表样式展示:



    心动了没有,接下来小编给大家简单介绍如何使用该项目。

    1、集成到项目
    在项目根目录的build.gradle添加一下代码:

    allprojects {
        repositories {
            maven { url "https://jitpack.io" }
        }
    }
    

    在app module中的build.gradle添加如下依赖:

    dependencies {
        compile 'com.github.PhilJay:MPAndroidChart:v3.0.2'
    }
    

    2、直接在xml布局文件中使用控件

       //折线图 
       <com.github.mikephil.charting.charts.LineChart
            android:id="@+id/chart"
            android:layout_width="match_parent"
            android:layout_height="match_parent" />
    

    3、把数据整理成一个List

    YourData[] dataObjects = ...;
    
    List<Entry> entries = new ArrayList<Entry>();
    
    for (YourData data : dataObjects) {
    
        // turn your data into Entry objects
        entries.add(new Entry(data.getValueX(), data.getValueY())); 
    }
    

    4、把List封装到LineDataSet ,同时可以设置样式,包括颜色等

    LineDataSet dataSet = new LineDataSet(entries, "Label"); // add entries to dataset
    dataSet.setColor(...);
    dataSet.setValueTextColor(...); // styling, ...
    

    5、把LineDataSet关联到图表

    LineData lineData = new LineData(dataSet);
    chart.setData(lineData);
    chart.invalidate(); // refresh
    

    除了图表类型多,还支持多重图表样式设置,充分满足用户的自定义样式,通用的样式设置方法有:

    • setBackgroundColor(int color):设置背景色
    • setDescription(String desc):设置图表右下角的文字描述
    • setDescriptionColor(int color):设置文字描述的颜色
    • setDescriptionPosition(float x, float y):设置文字描述的颜色
    • setDescriptionTypeface(Typeface t):设置文字描述的字体
    • setDescriptionTextSize(float size):设置文字描述的大小
    • setNoDataText(String text):设置没有数据的提示文本.
    • setDrawGridBackground(boolean enabled):设置是否启用绘画图表网格背景
    • setGridBackgroundColor(int color):设置网格背景颜色
    • setDrawBorders(boolean enabled):设置是否启动画边框
    • setBorderColor(int color):设置边框颜色
    • setBorderWidth(float width):设置边框宽度
    • setMaxVisibleValueCount(int count):设置最大可见数量,即横坐标数量超过屏幕显示范围,最多显示多少个

    好了,小编就给大家介绍到这里,有问题可以在下方评论留言,小编会为大家解答。
    关于该项目的更多功能,可以参考MPAndroidChart GitHub Wiki

    相关文章

      网友评论

        本文标题:安卓图表万金油MPAndroidChart

        本文链接:https://www.haomeiwen.com/subject/sxzljxtx.html