検索

ホームページ  >  に質問  >  本文

Android 中如何实现如图所示的图表?

Android 中有好的图表库吗?还是用 HTML5 来画比较好?

PHPzPHPz2772日前1041

全員に返信(4)返信します

  • ringa_lee

    ringa_lee2017-04-17 13:00:48

    很多的,如果题主的需求只是题目中的样子,自己写也很简单,自定义一个View依次将数组/列表中的数值绘制在屏幕上就可以了。
    如果有其它需求,看这个Trinea整理的开源项目:

    十四、GraphView

    1. MPAndroidChart
      强大的图表绘制工具,支持折线图、面积图、散点图、时间图、柱状图、条图、饼图、气泡图、圆环图、范围(高至低)条形图、网状图及各种图的结合;支持图的拖拽缩放;支持 Android 2.2 以上,支持横纵轴缩放,多指缩放,展现动画、高亮、保存到 sdcard、从文件读取图表
      项目地址:https://github.com/PhilJay/MPAndroidChart
      Demo地址:https://play.google.com/store/apps/details?id=com.xxmassdeveloper.mpchartexample
      Demo项目:https://github.com/PhilJay/MPAndroidChart/tree/master/MPChartExample
      效果图:





      在线演示:https://www.youtube.com/watch?v=ufaK_Hd6BpI

    2. achartengine
      强大的图表绘制工具,支持折线图、面积图、散点图、时间图、柱状图、条图、饼图、气泡图、圆环图、范围(高至低)条形图、拨号图/表、立方线图及各种图的结合
      项目地址:https://code.google.com/p/achartengine/
      效果图:
      http://www.achartengine.org/dimages/sales_line_and_area_chart.png
      http://www.achartengine.org/dimages/temperature_range_chart.png
      http://www.achartengine.org/dimages/combined_chart.png
      http://www.achartengine.org/dimages/budget_chart.png
      官网网址:http://www.achartengine.org/
      APP示例:Wordpress Android,Google Analytics

    3. GraphView
      绘制图表和曲线图的View,可用于Android上的曲形图、柱状图、波浪图展示
      项目地址:https://github.com/jjoe64/GraphView
      Demo项目:https://github.com/jjoe64/GraphView-Demos
      APP示例:Wordpress Android,Google Analytics

    4. HoloGraphLibrary
      绘制现状图、柱状图、饼状图
      项目地址:https://bitbucket.org/danielnadeau/holographlibrary/src
      文档介绍:https://bitbucket.org/danielnadeau/holographlibrary/wiki/Home

    5. 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)等图表。其它特性还包括支持图表缩放、手势移动、动画显示效果、高密度柱形显示、图表分界定制线、多图表的混合显示及同数据源不同类型图表切换等。
      项目地址:https://github.com/xcltapestry/XCL-Charts
      Demo地址:https://github.com/xcltapestry/XCL-Charts/blob/master/XCL-Charts-demo/bin/XCL-Charts-demo.apk?raw=true

    6. EazeGraph
      Android 图表库,支持柱状图、分层柱状图、饼状图、线性图
      项目地址:https://github.com/blackfizz/EazeGraph
      Demo地址:https://play.google.com/store/apps/details?id=org.eazegraph.app

    7. WilliamChart
      绘制图表的库,支持LineChartView、BarChartView和StackBarChartView三中图表类型,并且支持 Android 2.2及以上的系统。
      项目地址:https://github.com/diogobernardino/WilliamChart
      Demo地址:https://play.google.com/store/apps/details?id=com.db.williamchartdemo
      Demo项目:https://github.com/diogobernardino/WilliamChart/tree/master/sample
      效果图:

    8. HelloCharts for Android
      支持折线图、柱状图、饼图、气泡图、组合图;支持预览、放大缩小,滚动,部分图表支持动画;支持 Android 2.2 以上
      项目地址:https://github.com/lecho/hellocharts-android
      Demo地址:https://play.google.com/store/apps/details?id=lecho.lib.hellocharts.samples
      在线演示:https://www.youtube.com/watch?v=xbSBjyjH2SY

    返事
    0
  • 黄舟

    黄舟2017-04-17 13:00:48

    androidplot 这种?

    返事
    0
  • 怪我咯

    怪我咯2017-04-17 13:00:48

    不需要Html5,一般是直接在canvas上绘图了.
    成熟的图表库也很多..
    随便列2个:

    XCL-Charts
    https://github.com/xcltapestry/XCL-Charts

    MPAndroidChart
    https://github.com/PhilJay/MPAndroidChart

    返事
    0
  • PHP中文网

    PHP中文网2017-04-17 13:00:48

    有一些开源工具。如果想自己实现的话,可以用android.graphics包提供的工具绘制。
    关键是定义这样几个类:
    1.表示每条折现的数据模型,可以对数据进行增删改查等操作,这部分主要是设计数据结构
    2.折线的绘制类,包含一个draw(Canvas canvas,Paint paint)方法,在方法内完成绘制
    3.图表的数据模型,包含有要绘制的折线的引用,以及一些坐标系属性等。
    4.自定义View来呈现上述图标,重写onDraw(Canvas canvas)方法,在该方法内逐个调用每条折线的draw方法
    1和2,以及3和4可以合并定义为一个类,也就是既管理数据,又包含一个负责绘图的方法。
    具体实现比上述要复杂,但是大体上是这个思路。

    返事
    0
  • キャンセル返事