piechart 文档 android,(Android 应用之路) MPAndroidChart~PieChart
简介
AndroidChart">MPAndroidChart是PhilJay大神给Android开发者带来的福利。MPAndroidChart是一个功能强大并且使用灵活的图表开源库,支持Android和IOS两种,这里我们暂时只关注Android版本。
Wiki
https://github.com/PhilJay/MPAndroidChart/wiki
https://jitpack.io/com/github/PhilJay/MPAndroidChart/v3.0.0-beta1/javadoc/
今日之图~PieChart
先看下效果压压惊,右边的图为左边的图横向拉伸后的效果
实际静态效果,上面那个是因为加了动画,录制Gif的时候不小心弄成了一直旋转的效果喎�"/kf/ware/vc/" target="_blank" class="keylink">vcD4NCjxwPjxpbWcgYWx0PQ=="这里写图片描述" src="/uploadfile/Collfiles/20160906/2016090609284137.png" title="" />
布局文件
对于Chart,可以采用布局文件添加方式,也可以采用代码添加方式。
代码
public class MainActivity extends AppCompatActivity {
@Bind(R.id.piechart)
PieChart piechart;
private Random random;//用于产生随机数字
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
ButterKnife.bind(this);
random = new Random();
initPieChart();//初始化饼图
}
private void initPieChart() {
ArrayList yVals = new ArrayList<>(); //值坐标
ArrayList xVals = new ArrayList<>();//对应的Lable,可以理解成X轴
for (int i = 0; i < 5; i++) {
xVals.add((i + 1) + "月");
yVals.add(new BarEntry(random.nextInt(10000), i));
}
PieDataSet pieDataSet = new PieDataSet(yVals, "小明每月支出");//创建饼图的一个数据集
pieDataSet.setColors(ColorTemplate.COLORFUL_COLORS); //设置成丰富多彩的颜色
DisplayMetrics metrics = getResources().getDisplayMetrics();
float px = 10 * (metrics.densityDpi / 160f);
pieDataSet.setSelectionShift(px); //点击后延伸出来的长度
PieData piedata = new PieData(xVals, pieDataSet);//生成PieData
piechart.setData(piedata);//给PieChart填充数据
piechart.getLegend().setPosition(Legend.LegendPosition.ABOVE_CHART_LEFT);
piechart.getLegend().setForm(Legend.LegendForm.CIRCLE);//设置注解的位置和形状
piechart.setOnChartValueSelectedListener(new OnChartValueSelectedListener() {//设置值选择时的Listener
@Override
public void onValueSelected(Entry entry, int i, Highlight highlight) {
Toast.makeText(MainActivity.this, "Something selected value = " + entry.getVal(), Toast.LENGTH_SHORT).show();//单纯地显示一个Toast
}
@Override
public void onNothingSelected() {
}
});
piechart.setCenterText("收支明细");//中间写的文字
piechart.setCenterTextColor(Color.RED);//设置中间文字的颜色
piechart.setCenterTextRadiusPercent(0.5f);//设置文字显示的角度,180横着,默认是竖着
piechart.setCenterTextSize(12f);//设置中心文字的字体大小
piechart.setCenterTextTypeface(null);//设置字体
piechart.setDrawCenterText(true);//中心字使能开关,false时中间无法显示文字
piechart.setTransparentCircleAlpha(100);//透明圈的透明度,分3圈,一个是外面的值,然后是这个,然后就是下面的那个Hole
piechart.setTransparentCircleColor(Color.RED); //设置颜色
piechart.setTransparentCircleRadius(50f);//设置半径
piechart.setDrawHoleEnabled(true);//基本同上
piechart.setHoleColor(Color.GREEN);
piechart.setHoleRadius(30f);
piechart.setDescription("No Deal");//设置描述文字
piechart.setDescriptionTextSize(20.f);//设置描述文字的字体
piechart.animateXY(1000, 1000);
}
}
值选择时的事件处理
上面的例子中其实已经有了
piechart.setOnChartValueSelectedListener(new OnChartValueSelectedListener() {//设置值选择时的Listener
@Override
public void onValueSelected(Entry entry, int i, Highlight highlight) {
Toast.makeText(MainActivity.this, "Something selected value = " + entry.getVal(), Toast.LENGTH_SHORT).show();//单纯地显示一个Toast
}
@Override
public void onNothingSelected() {
}
});
选中和啥都没干的回调,利用这个回调我们可以做一些跳转操作,比如从国家级报表,跳转到省级,然后市级 and so on.
piechart 文档 android,(Android 应用之路) MPAndroidChart~PieChart相关推荐
- android11用石墨文档,轻协作 | 石墨文档 for Android 版轻体验
前几天喜闻石墨文档终于推出 Android 版本,算是全面支持 ios.Android 和 web 平台.身为 Android 用户,可以告别体验不佳的 web 端,下面为大家送上石墨文档 for A ...
- android程序打印,通过iPrintScan软件打印文档(适用于Android安卓)
文档标题:通过iPrint&Scan软件打印文档(适用于Android安卓) 文档代码:CHN-FP0576-1 最近修改日期:2020年11月19日 通过iPrint&Scan软件打 ...
- Android程序解析xml至文档中,Android开发之DOM解析xml文件的方法
本文实例讲述了Android中DOM解析xml文件的方法.分享给大家供大家参考,具体如下: 一.在assets文件中写xml文件 李明 30 李向梅 25 二.在service中写一个DOM解析的操作 ...
- Windows 下 OpenCV 3.4.0 + Contrib 部署文档 (VS2015 Android)
声明 以下[参考]链接,如有侵权,请联系删除,在此先感谢在网络上无私奉献的人们~ 如有错误,请联系更正,GitHub同文地址 文章目录 声明 VS 篇 编译 OpenCV + OpenCV_Contr ...
- win7我的文档里.android是什么文件夹,[转载]移动Win7用户文件夹(我的文档)默认位置至D盘...
Windows7的用户文件夹默认所在位置是系统盘(通常是C盘)下的"Users"目录之内.该文件夹中储存着所有的用户生成文件,比如你保存在"桌面"上的文件(实际 ...
- piechart 文档 android,Android饼图 PieChart
PieChart 饼图,android 图表.会根据定义PieChartView的大小自动居中,所以如果要调整位置,只需要在xml更改PieChartView位置大小即可. 1.先看一下效果图: 展示 ...
- piechart 文档 android,Android MPAndroidChart之PieChart和数据结构以及模型【5】
Android MPAndroidChart之PieChart和数据结构以及模型[5] 以MPAndroidChart的饼状图PieChart为例. 测试的MainActivity的Java代码: p ...
- piechart 文档 android,mpchart piechart:如何在android中显示特定的只有一个文本值
试试这个. piechart = (PieChart) findViewById(R.id.piechart); piechart.setUsePercentValues(true); ArrayLi ...
- 大疆文档(8)-Android教程-模拟器App
本节全篇为大疆 Mobile SDK 安卓教程 部分,ios教程参见 IOS教程 . 模拟器应用程序 在本教程中,你可以学习如何使用DJI Mobile SDK在你的Android Studio项目中 ...
最新文章
- python3编码命名规范_Python代码规范和命名规范
- linux kvm安装windows,Linux下KVM安装windows
- kotlin sealed 中_7.8 Kotlin Sealed类
- 学习进度条——第八周
- 递归不行就换动态规划(洛谷P1028题题解,Java语言描述)
- java array 元素的位置_JAVA集合类,有这一篇就够了
- 电大计算机机考excel,中央电大计算机应用机考excel电子表格模板题库存(118页)-原创力文档...
- wxpython多线程_WxPython 4.0.4多线程访问UI
- OSPF路由协议配置实例
- CentOS配置postgresql+postsql
- otc焊接机器人编程模拟软件_OTC机器人编程
- cad安装日志文件发生错误_CAD安装问题,CAD安装时为什么显示内部发生错误急?...
- org.jboss.netty.internal.LoggerConfigurator.DESCRIBED is already registered
- 远程实时调试手机上的web页面
- 猫和计算机连接网络,计算机路由器与猫的连接方法步骤
- mongoose 更新保存数据的时候自动插入__v
- [禅悟人生]有一种禅心叫认真
- 学计算机编程难吗,计算机编程入门 计算机编程难学吗
- python开发工具之神兵利器_擅用Python,强推这 7 种 神兵利器!
- C#中接口(Interface)与抽象类(abstract)的区别
热门文章
- 三个主要的国外虚拟主机管理系统
- 智能补货 (在途、现有库存、安全库存) 的思路
- discuz android源码分析,Discuz 原生手机客户端,完全开源!包括android及ios源码。...
- 今天开始学习用vs.net开发smartphone软件
- MailUtil-Java发送邮件工具类
- pyserial中的巨坑!
- jQuery(二)图片轮播与放大显示
- 计算机专业的硕士犯罪,中国刑事警察学院计算机犯罪侦查系介绍
- linux中的管道定义,Linux 管道命令是什么?
- 修改服务器的ip地址的命令行,修改服务器的ip地址的命令行