- 浏览: 60758 次
- 性别:
- 来自: 南京
最新评论
-
cuixuelei:
图形中RChart Demo 字样,怎么去掉
android饼状图表 -
Mr.Cheney:
代码太乱了
gallery加载大量图片时内存溢出的解决方法(一) -
ygswine:
最后一点是否可以在发送QQ邮箱,成功后程序关闭,在Activi ...
开机实现将手机联系人、通话记录、手机号码、手机所在地、发送到指定邮箱里,失败则发送短信到指定手机之(获取联系人和电话号码、通话记录) -
zxuenet:
erwin_king 写道因为这个时收费的,所以会有的demo ...
android饼状图表 -
mvpstevenlin:
博主,麻烦发一份我学习吧 1577360984@qq.com, ...
开机实现将手机联系人、通话记录、手机号码、手机所在地、发送到指定邮箱里,失败则发送短信到指定手机之(获取联系人和电话号码、通话记录)
相信图表再很多统计应用都会应用,再这里我想向介绍一个第三方的jar包--j4lChartAndroid.jar,再这里基本上平时用到的图表都有,这里我们就只介绍饼状3d图表
1、xml文件
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical" android:layout_width="fill_parent"
android:layout_height="fill_parent">
<LinearLayout android:id="@+id/course_viewflipper"
android:background="#FFFFFF" android:layout_width="fill_parent"
android:layout_height="fill_parent">
</LinearLayout>
</LinearLayout>
2、activity类
public class ShowImage extends Activity {
/** Called when the activity is first created. */
ChartLoader cha = new ChartLoader();
ChartPanel chartPanel;
static List<ddd> list;
static double[] valueList;
static String[] labellist;// 标签值
static boolean[] gapsValueList;
static FillStyle[] fillStyle_color;
static ChartColor[] color = new ChartColor[] {
GraphicsProvider.getColor(ChartColor.CYAN),
GraphicsProvider.getColor(ChartColor.BLUE),
GraphicsProvider.getColor(ChartColor.GREEN),
GraphicsProvider.getColor(ChartColor.YELLOW),
GraphicsProvider.getColor(ChartColor.RED),
GraphicsProvider.getColor(ChartColor.SKYBLUE),
GraphicsProvider.getColor(ChartColor.PINK) };
static int[] labelColor = new int[] { Color.CYAN, Color.BLUE,
Color.GREEN, Color.YELLOW, Color.RED, Color.parseColor("#00CCFF"), Color.parseColor("#ffc0cb") };
@Override
public void onCreate(Bundle icicle) {
super.onCreate(icicle);
setContentView(R.layout.main);
list = getData();
getValues();
LinearLayout imageview = (LinearLayout) findViewById(R.id.course_viewflipper);
chartPanel = new ChartPanel(this);
chartPanel.setChart(Example4());
imageview.addView(chartPanel);
setContentView(chartPanel);
}
public List<ddd> getData() {
List<ddd> l = new ArrayList<ddd>();
ddd d1 = new ddd();
d1.setDoor("南门");
d1.setTotal(100);
ddd d2 = new ddd();
d2.setDoor("西门");
d2.setTotal(200);
ddd d3 = new ddd();
d3.setDoor("北门");
d3.setTotal(300);
ddd d4 = new ddd();
d4.setDoor("东门");
d4.setTotal(400);
l.add(d1);
l.add(d2);
l.add(d3);
l.add(d4);
return l;
}
class ddd {
String door;
double total;
public String getDoor() {
return door;
}
public void setDoor(String door) {
this.door = door;
}
public double getTotal() {
return total;
}
public void setTotal(double total) {
this.total = total;
}
}
public void getValues(){
valueList= new double[list.size()];// 数值组
gapsValueList =new boolean[list.size()];// 饼块之间是否分开组
fillStyle_color= new FillStyle[list.size()];// 颜色组
labellist= new String[list.size()];// // 图解label组
for (int i = 0; i < list.size(); i++) {
labellist[i] = list.get(i).getDoor();
valueList[i] = list.get(i).getTotal();
fillStyle_color[i] = new FillStyle(color[i]);
if(i<list.size()-1){
gapsValueList[i] = true;
}
}
}
// ==============================================
protected void onDestroy() {
if (chartPanel != null)
if (chartPanel.getChart() != null)
chartPanel.getChart().stopUpdater();
super.onDestroy();
}
public static Chart Example4() {
PieDataSerie data1 = new PieDataSerie(valueList, fillStyle_color,
gapsValueList, labellist);
data1.valueFont = GraphicsProvider
.getFont("Arial", ChartFont.PLAIN, 14);
// legend
Legend l = new Legend();
l.background = new FillStyle(
GraphicsProvider.getColor(ChartColor.WHITE));
l.border = new LineStyle(1,
GraphicsProvider.getColor(ChartColor.BLACK),
LineStyle.LINE_NORMAL);
for (int i = 0; i < list.size(); i++) {
l.addItem(labellist[i], new FillStyle(color[i]));
}
// create title
Title title = new Title("");
// plotter
PiePlotter plot = new PiePlotter();
// 3D effect
plot.effect3D = true;
plot.border = new LineStyle(1, GraphicsProvider.getColor(ChartColor.BLACK),LineStyle.LINE_NORMAL);
data1.textDistanceToCenter = 1.3;
plot.labelFormat = "#PERCENTAGE#";
// create chart
Chart chart = new Chart(title, plot, null, null);
// chart background
chart.back = new FillStyle(GraphicsProvider.getColor(ChartColor.WHITE));
// chart.back.gradientType = FillStyle.GRADIENT_VERTICAL;
// add legend
chart.legend = l;
// legend position and layout
chart.layout = Chart.LAYOUT_LEGEND_RIGHT;
chart.topMargin = 0.1;
chart.bottomMargin = 0.4; // 20%
chart.leftMargin =0.1;
l.verticalLayout = true;
// add data
chart.addSerie(data1);
chart.setHeight(250);
chart.setWidth(320);
return chart;
}
}
评论
谢谢~我知了
楼上说的极是
可以给我发一份饼状图的使用范例吗?
961132502@qq.com
谢谢
2012-2-27
发表评论
-
android 使用des算法
2012-02-09 12:52 1971转自:http://www.linuxidc.com/Linu ... -
Toast显示图片
2012-02-02 12:56 1469转自:http://blog.csdn.net/ling ... -
文字中间加横线效果
2012-02-02 11:00 1940priceTV.setText("价格:2.00 ... -
开机实现将手机联系人、通话记录、手机号码、手机所在地、发送到指定邮箱里,失败则发送短信到指定手机之(apn操作)
2011-11-08 12:51 1389static Uri uri = Uri.parse(&qu ... -
开机实现将手机联系人、通话记录、手机号码、手机所在地、发送到指定邮箱里,失败则发送短信到指定手机之(gps操作)
2011-11-08 12:48 1584public static String getCityNam ... -
开机实现将手机联系人、通话记录、手机号码、手机所在地、发送到指定邮箱里,失败则发送短信到指定手机之(获取联系人和电话号码、通话记录)
2011-11-08 12:46 3057首先声明者只是一个个 ... -
Android Activity界面切换添加动画特效
2011-06-14 13:48 1214在Android 2.0之后有了overridePending ... -
android 权限介绍(二)
2011-06-02 17:08 1016SYSTEM_ALERT_WINDOW 允许 ... -
android 权限介绍(一)
2011-06-02 17:00 836Manifest.permission 这个类定义了andro ... -
编写高效的Android代码(提高运行速度,节省电量)
2011-06-02 16:28 1365编写高效的Android代码( ... -
[整理]Selector、shape详解
2011-06-02 15:15 4215Selector、shape详解(一) Selector的结 ... -
[转帖]Android自定义Activity漂亮跳转效果
2011-05-31 20:10 1285Android自定义Activity漂亮跳转效果 ... -
gallery加载大量图片时内存溢出的解决方法(三)
2011-05-31 19:14 20326、ImageAdapter public class Im ... -
gallery加载大量图片时内存溢出的解决方法(二)
2011-05-31 18:56 2568Paint deafalutPaint = new Paint ... -
gallery加载大量图片时内存溢出的解决方法(一)
2011-05-31 18:55 4497这只是我以前开始搞android事留下的代码,发现还是存在问题 ... -
ListView学习(三) 加载视野内的数据
2011-05-31 17:13 1783在滑动的过程中,只有在视野中的item才会加载数据,其他的其实 ... -
ListView学习(二) 点击条目隐藏展开正文
2011-05-28 00:00 3829本篇是listview条目点击展开或者隐藏内容,本文参照了an ... -
[整理] 操作通话记录(一)
2011-05-25 11:31 1891/* *为了方便后面页面的封装,这里定义了一个实体类 ... -
[整理] 操作通话记录(二)
2011-05-25 11:25 1128//处理时间 public String for ... -
ListView学习(一) 滑动分页时底部显示进度条
2011-05-15 14:24 2659我们在使用listview时难免会遇到分页的情况,既然是分页, ...
相关推荐
在Android开发中,数据可视化是十分重要的,尤其是对于数据分析和展示。饼状图是一种常见的数据表示方式,...无论是简单的统计分析还是复杂的业务展示,Android饼状图都能发挥重要作用,帮助用户更好地理解和解读数据。
在Android开发中,饼状图是一种常见的数据可视化方式,它能直观地展示各个部分占整体的比例关系。"Android 饼状图分析.zip" 文件包提供了实现饼状图分析的相关资料,包括源码示例和可能的说明文档,用于帮助开发者...
本教程将探讨如何在Android平台上动态地实现折线图、柱状图和饼状图,这些图表是数据呈现的常见方式,尤其适用于数据分析和展示。 首先,让我们了解这三种图表的基本概念: 1. **折线图**:折线图通过连接一系列...
在这个"android 动态饼状统计图DEMO"中,我们将探讨如何在Android应用中创建和实现这种交互式的图表。 1. **饼状图的基本概念** 饼状图是用圆形来表示整体,而每个扇形则代表整体中的一个部分。扇形的大小与该部分...
- Android有许多优秀的第三方图表库,如MPAndroidChart、AChartEngine等,它们提供了丰富的图表类型,包括饼状图,并且支持动态更新。 - 使用这些库可以大大简化代码,只需设置数据和配置选项即可生成饼状图,如...
在Android开发中,饼状图是一种常见的数据可视化方式,它能直观地展示各个部分与整体之间的比例关系。本文将详细讲解如何在Android中实现一个简单的饼状图。 首先,我们需要了解饼状图的基本原理。饼状图是由一个...
在Android开发中,数据可视化是不可或缺的一部分,而HelloCharts是一个流行的开源框架,专门用于创建各种图表,如柱状图、折线图和饼状图。本文将深入探讨如何利用HelloCharts库结合ViewPager和Fragment实现水平页面...
首先,Android饼状图通常用于显示各部分占总体的比例,而柱状图则适合展示不同类别的数量或者数值差异。AChartEngine是一个流行的开源库,为Android提供了丰富的图表绘制功能,包括饼状图和柱状图。在...
本项目提供了一份完整的代码示例,适合初学者学习如何在Android应用中实现这两种图表。 首先,我们来讲解饼状图。饼状图是一种用圆形及其扇形来表示各部分占整体比例的数据图形。在Android中,我们可以使用开源库如...
在Android开发中,饼状报表是一种常见的数据可视化方式,它能直观地展示各项数据的比例关系。本示例项目“android 饼状报表”利用了第三方的库来实现具有动画效果和点击放大的功能,使得饼状图更具交互性和吸引力。...
在Android开发中,饼状图是一种常见的数据可视化方式,它能直观地展示各个部分占整体的比例关系。在本教程中,我们将深入探讨如何在Android应用中实现一个简单的饼状图。 首先,我们要了解饼状图的基本概念。饼状图...
总结,Android开发中实现柱状图、曲线图和饼状图并不复杂,借助像`ACHARTENGINE`这样的第三方库,可以快速地在应用中集成这些图表功能。通过学习和实践,开发者能够创建出各种定制化的图表,以满足各种数据分析和...
Android之玩转MPAndroidChart(折线图、柱形图、饼状图、散列图、雷达图)优雅的舞动(Androidstudio版).zip,太多无法一一验证是否可用,程序如果跑不起来需要自调,部分代码功能进行参考学习。
AChartEngine是一个开源的图表库,为Android开发者提供了创建各种图表的能力,包括饼状图。下面我们将深入探讨AChartengineDemo项目,了解如何在Android应用中实现饼状图。 **AChartEngine库** AChartEngine是一个...
在Android开发中,饼状报表图是一种常用的可视化数据方式,尤其适用于展示各项比例关系。"android 饼状报表图 带打开动画和点击变大"这个主题着重于两个关键点:动画效果和交互性。 首先,让我们来详细探讨饼状图。...
一开始是使用第三方的绘图框架Achartengine来绘制,能实现一大部分的图形。...为此小编我只能尝试着自己自定义一些图表类的控件。这里给大家带来可点击的饼状图、可点击以及可滑动的柱状图、双折线图
这篇博客“Android之动态折线柱状饼状图的实现”提供了一种实现这些图表的方法。我们将探讨如何在Android中创建这三种图表,并使用源码工具来帮助我们完成这一过程。 首先,我们需要一个库来绘制这些图形。常见的...
AChartEngine是一个强大的开源图表库,它提供了多种图表类型,包括线形图、柱状图、饼状图等,使得开发者能够轻松地在Android应用中集成这些图表。 首先,要使用AChartEngine绘制饼状图,我们需要了解其基本概念和...
总结,实现Android饼状图涉及绘制、动画、交互等多个方面。通过自定义View或使用第三方库,开发者可以创建功能丰富的饼状图,有效地展示数据并提供良好的用户交互。同时,注意性能优化,确保应用运行流畅。