1. 首页 > 科技

Android MPAndroidChart 折线图设置哪些属性? button组件常用属性包括

Android MPAndroidChart 折线图设置哪些属性?button组件常用属性包括

Android 应用里面怎么开发线性图标跟柱状图

如何实现:Android 柱状图或折线图不同数值范围(正负值)显示不同颜色

推荐你几个相关开源项目,可以根据需要自己选择,自己画还是比较麻烦的:

MPAndroidChart

强大的图表绘制工具,支持折线图、面积图、散点图、时间图、柱状图、条图、饼图、气泡图、圆环图、范围(高至低)条形图、网状图及各种图的结合;支持图的拖拽缩放;支持 Android 2.2 以上,支持横纵轴缩放,多指缩放,展现动画、高亮、保存到 sdcard、从文件读取图表

achartengine

强大的图表绘制工具,支持折线图、面积图、散点图、时间图、柱状图、条图、饼图、气泡图、圆环图、范围(高至低)条形图、拨号图/表、立方线图及各种图的结合

GraphView

绘制图表和曲线图的View,可用于Android上的曲形图、柱状图、波浪图展示

HoloGraphLibrary

绘制线状图、柱状图、饼状图

XCL-Charts

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

EazeGraph

Android 图表库,支持柱状图、分层柱状图、饼状图、线性图

WilliamChart

绘制图表的库,支持LineChartView、BarChartView和StackBarChartView三中图表类型,并且支持 Android 2.2及以上的系统。

HelloCharts for Android

支持折线图、柱状图、饼图、气泡图、组合图;支持预览、放大缩小,滚动,部分图表支持动画;支持 Android 2.2 以上

mpandroidchart description怎么设置

哈哈已经搞定;给大家看看

//是否启用网格背景

mChart.setDrawGridBackground(false);

//是否设置Y轴坐标

mChart.setDrawYLabels(false);

//设置网格竖线是否显示

mChart.setDrawVerticalGrid(false);

// 设置在Y轴上是否是从0开始显示

mChart.setStartAtZero(false);

//是否在Y轴显示数据,就是曲线上的数据

mChart.setDrawYValues(true);

//设置网格

mChart.setDrawBorder(false);

mChart.setBorderPositions(new BarLineChartBase.BorderPosition[]{

BarLineChartBase.BorderPosition.BOTTOM});

//在chart上的右下角加描述

//mChart.setDescription("曲线图");

//设置Y轴上的单位

mChart.setUnit("");

//设置透明度

mChart.setAlpha(0.8f);

//设置网格底下的那条线的颜色

mChart.setBorderColor(Color.rgb(213, 216, 214));

//设置Y轴前后倒置

mChart.setInvertYAxisEnabled(false);

//设置高亮显示

mChart.setHighlightEnabled(true);

//设置是否可以触摸,如为false,则不能拖动,缩放等

mChart.setTouchEnabled(true);

//设置是否可以拖拽,缩放

mChart.setDragEnabled(true);

mChart.setScaleEnabled(true);

//设置是否能扩大扩小

mChart.setPinchZoom(true);

// 设置背景颜色

mChart.setBackgroundResource(R.mipmap.mpandroidchart_bc);

//设置点击chart图对应的数据弹出标注

//MyMarkerView mv = new MyMarkerView(this, R.layout.custom_marker_view);

// define an offset to change the original position of the marker

// (optional)

//定义一个偏移量来改变标记的原始位置

//mv.setOffsets(-mv.getMeasuredWidth() / 2, -mv.getMeasuredHeight());

// set the marker to the chart

//设置标记图

//mChart.setMarkerView(mv);

// enable/disable highlight indicators (the lines that indicate the

// highlighted Entry)

//启用/禁用突出指标(表明行突出显示的条目)

mChart.setHighlightIndicatorEnabled(false);

XLabels xl = mChart.getXLabels(); // xl.setAvoidFirstLastClipping(true);

// xl.setAdjustXLabels(true);

xl.setPosition(XLabels.XLabelPosition.BOTTOM); // 设置X轴的数据在底部显示

xl.setTextSize(10f); // 设置字体大小

xl.setSpaceBetweenLabels(3); // 设置数据之间的间距

YLabels yl = mChart.getYLabels(); // yl.setPosition(YLabelPosition.LEFT_INSIDE); // set the position yl.setTextSize(10f); // s设置字体大小 yl.setLabelCount(5); // 设置Y轴最多显示的数据个数 // 加载数据 setData(); //从X轴进入的动画 mChart.animateX(2000); mChart.animateY(2000); //从Y轴进入的动画 mChart.animateXY(2000, 2000); //从XY轴一起进入的动画 //设置最小的缩放 mChart.setScaleMinima(0.5f, 1f); //设置视口 // mChart.centerViewPort(10, 50); // get the legend (only possible after setting data) //后得到图例(唯一可能设置数据) Legend l = mChart.getLegend(); l.setForm(Legend.LegendForm.LINE); //设置图最下面显示的类型 l.setTextSize(15); l.setTextColor(Color.rgb(104, 241, 175)); l.setFormSize(30f); // set the size of the legend forms/shapes 图例形式/形状的大小 // 刷新图表 mChart.invalidate(); set1.setDrawCubic(true); //设置曲线为圆滑的线 set1.setCubicIntensity(0.2f); set1.setDrawFilled(false); //设置包括的范围区域填充颜色 set1.setDrawCircles(true); //设置有圆点 set1.setLineWidth(2f); //设置线的宽度 set1.setCircleSize(5f); //设置小圆的大小 set1.setHighLightColor(Color.rgb(244, 117, 117)); set1.setColor(Color.rgb(104, 241, 175)); //设置曲线的颜色 // create a data object with the datasets LineData data = new LineData(xVals, set1);

android怎么让折线图上方显示数字

直接在旁边写数字就可以了。主要画折线图。

步骤一:折线图的坐标集

  首先应该创建 XYSeries对象 : 用于提供绘制的点集合的数据

  XYSeries series = new XYSeries(titles[i]); // 根据每条线的名称创建

  将所有的坐标加入这个集合

  series .add (xV[k], yV[k]);

  XYMultipleSeriesDataset对象 用于 保存点集数据 ,包括每条曲线的X,Y坐标

  // 用于数据的存放

  XYMultipleSeriesDataset dataset = new XYMultipleSeriesDataset();

  dataset .addSeries (series);

  步骤二:折线图的样式集

  定义每条曲线的颜色

  int [] colors = new int [] {Color. BLUE ,Color. GREEN };

  定义每条曲线的点的形状

  PointStyle [] styles =

  new PointStyle []{ PointStyle . CIRCLE , PointStyle . DIAMOND };

  曲线图的格式,包括颜色,值的范围,点和线的形状等等 都封装在 XYSeriesRender对象中,再将XYSeriesRender对象封装在 XYMultipleSeriesRenderer 对象中

  XYSeriesRenderer r = new XYSeriesRenderer();

  r.setColor(colors[i]);

  r.setPointStyle(styles[i]);

  r.setFillPoints(fill);

  XYMultipleSeriesRenderer renderer = new XYMultipleSeriesRenderer();

  renderer.addSeriesRenderer(r);

  设置折线图名称,坐标轴的名称,坐标轴的起点重点,坐标轴的颜色,坐标轴上数字的颜色

  setChartSettings(renderer, "Line Chart Demo" , "X" , "Y" , - 1 , 12, 0, 35 , Color. WHITE , Color. WHITE );

  步骤三:显示折线图

  View chart = ChartFactory. getLineChartView ( this , dataset, renderer);

  setContentView(chart);

求 android RadioButton属性详解

一: 单选按钮RadioButton在Android平台上也应用的非常多,比如一些选择项的时候,会用到单选按钮,实现单选按钮由两部分组成,也就是RadioButton和RadioGroup配合使用

RadioButton的单选按钮;

RadioGroup是单选组合框,用于将RadioButton框起来;

在没有RadioGroup的情况下,RadioButton可以全部都选中;

当多个RadioButton被RadioGroup包含的情况下,RadioButton只可以选择一个;

注意:单选按钮的事件监听用setOnCheckedChangeListener来对单选按钮进行监听

例子:一道选择题,选择哪个城市美女最多,当然,这个就是为了测试

Java代码

1.package .loulijun.radio;

2.

3.import android.app.Activity;

4.import android.os.Bundle;

5.import android.view.Gravity;

6.import android.widget.RadioButton;

7.import android.widget.RadioGroup;

8.import android.widget.TextView;

9.import android.widget.Toast;

10.

11.public class RadioTest extends Activity {

12. /** Called when the activity is first created. */

13. TextView textview;

14. RadioGroup radiogroup;

15. RadioButton radio1,radio2,radio3,radio4;

16. @Override

17. public void onCreate(Bundle savedInstanceState) {

18. super.onCreate(savedInstanceState);

19. setContentView(R.layout.main);

20. textview=(TextView)findViewById(R.id.textview1);

21. radiogroup=(RadioGroup)findViewById(R.id.radiogroup1);

22. radio1=(RadioButton)findViewById(R.id.radiobutton1);

23. radio2=(RadioButton)findViewById(R.id.radiobutton2);

24. radio3=(RadioButton)findViewById(R.id.radiobutton3);

25. radio4=(RadioButton)findViewById(R.id.radiobutton4);

26.

27. radiogroup.setOnCheckedChangeListener(new RadioGroup.OnCheckedChangeListener() {

28.

29. @Override

30. public void onCheckedChanged(RadioGroup group, int checkedId) {

31. // TODO Auto-generated method stub

32. if(checkedId==radio2.getId())

33. {

34. DisplayToast("正确答案:"+radio2.getText()+",恭喜你,回答正确!");

35. }else

36. {

37. DisplayToast("请注意,回答错误!");

38. }

39. }

40. });

41. }

42. public void DisplayToast(String str)

43. {

44. Toast toast=Toast.makeText(this, str, Toast.LENGTH_LONG);

45. toast.setGravity(Gravity.TOP,0,220);

46. toast.show();

47. }

48.}

strings.xml文件

Xml代码

1.<?xml version="1.0" encoding="utf-8"?>

2.<resources>

3. <string name="hello">哪个城市美女多?</string>

4. <string name="app_name">单选按钮测试</string>

5. <string name="radiobutton1">杭州</string>

6. <string name="radiobutton2">成都</string>

7. <string name="radiobutton3">重庆</string>

8. <string name="radiobutton4">苏州</string>

9.</resources>

main.xml文件:注意,这里面,4个RadioButton包含在RadioGroup中

Xml代码

1.<?xml version="1.0" encoding="utf-8"?>

2.<LinearLayout xmlns:android="schemas.android/apk/res/android"

3. android:orientation="vertical"

4. android:layout_width="fill_parent"

5. android:layout_height="fill_parent"

6. >

7.<TextView

8. android:layout_width="fill_parent"

9. android:layout_height="wrap_content"

10. android:text="@string/hello"

11. android:id="@+id/textview1"

12. />

13. <RadioGroup

14. android:id="@+id/radiogroup1"

15. android:layout_width="wrap_content"

16. android:layout_height="wrap_content"

17. android:orientation="vertical"

18. android:layout_x="3px"

19. >

20. <RadioButton

21. android:id="@+id/radiobutton1"

22. android:layout_width="wrap_content"

23. android:layout_height="wrap_content"

24. android:text="@string/radiobutton1"

25. />

26. <RadioButton

27. android:id="@+id/radiobutton2"

28. android:layout_width="wrap_content"

29. android:layout_height="wrap_content"

30. android:text="@string/radiobutton2"

31. />

32. <RadioButton

33. android:id="@+id/radiobutton3"

34. android:layout_width="wrap_content"

35. android:layout_height="wrap_content"

36. android:text="@string/radiobutton3"

37. />

38. <RadioButton

39. android:id="@+id/radiobutton4"

40. android:layout_width="wrap_content"

41. android:layout_height="wrap_content"

42. android:text="@string/radiobutton4"

43. />

44. </RadioGroup>

45.</LinearLayout>

二:Android 自定义RadioButton的样式(和上面关系不大)

我们知道Android控件里的button,listview可以用xml的样式自定义成自己希望的漂亮样式。

最近用到RadioButton,利用xml修改android:background="@drawable/button_drawable",其中button_drawable为自己定义的.xml文件(res/drawable文件下),但是不成功,到网上查找,也没有正确的说法,我就开始自己尝试,最后做好了。

其实方法很简单,同样在res/drawable新建radiobutton.xml如下

Xml代码

1.<selector xmlns:android="schemas.android/apk/res/android">

2.

3. <item

4.

5.

6. android:state_enabled="true"

7.

8. android:state_checked="true"

9.

10. android:drawable="@drawable/check" />

11.

12. <item

13.

14. android:state_enabled="true"

15.

16. android:state_checked="false"

17.

18. android:drawable="@drawable/checknull" />

19.

20. </selector>

check和checknull分别为选中和位选中的图片。

然后在你的布局文件中,RadioButton 布局

设置android:button = "@drawable/radiobutton",就可以了!