Android 中如何实现如图所示的图表?
PHPz
PHPz 2017-04-17 12:58:48
0
4
1052

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

PHPz
PHPz

学习是最好的投资!

全部回覆(4)
左手右手慢动作

很多的,如果題主的需求只是題目中的樣子,自己寫也很簡單,自訂一個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_range_chart.phttp://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

黄舟

androidplot 這種?

刘奇

不需要Html5,一般是直接在canvas上繪圖了.
成熟的圖表庫也很多..
隨便列2個:

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

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

洪涛

有一些開源工具。如果想自己實作的話,可以用android.graphics套件提供的工具來繪製。
關鍵是定義這樣幾個類別:
1.表示每條折現的資料模型,可以對資料進行增刪改查等操作,這部分主要是設計資料結構
2.折線的繪製類,包含一個draw(Canvas canvas,Paint paint)方法,在方法內完成繪製
3.圖表的資料模型,包含要繪製的折線的引用,以及一些座標系屬性等。
4.自訂View來呈現上述圖標,重寫onDraw(Canvas canvas)方法,在該方法內逐一調用每條折線的draw方法
1和2,以及3和4可以合併定義為一個類,也就是既管理數據,又包含一個負責繪圖的方法。
具體實現比上述複雜,但大體上是這個思路。

熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板