安卓图表万金油MPAndroidChart

名称 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

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 173,462评论 25 708
  • 发现 关注 消息 iOS 第三方库、插件、知名博客总结 作者大灰狼的小绵羊哥哥关注 2017.06.26 09:4...
    肇东周阅读 12,251评论 4 61
  • 学习CSS的最佳网站没有之一 http://www.w3school.com.cn/tags/index.asp ...
    Amyyy_阅读 1,100评论 0 1
  • 我要你
    哭鼻子的大花猫阅读 404评论 0 1
  • 昨晚用滴滴软件打车后,正巧打到一个完全不熟悉路的师傅,他尽管使用了导航,但是仍然在距离我1公里处的地方开了半小时才...
    居里叶阅读 244评论 0 4