1. 程式人生 > >Android自定義圖表庫:前言

Android自定義圖表庫:前言

文章目錄

前言

網上的圖表庫說多也多 說少也少,但是我個人感覺很大的缺點就是,一個圖表的文件太少,使用複雜,我個人的專案中一直使用的最古老的那個開源圖表庫AChartEngine,但是問題及其多,而且使用及其不方便,按照網上的資料設定相關的屬性,卻總是得到想要的效果,圖表顯示的時候,也會有各種重疊的現象,當時想換一個其他的圖表庫,比如MPAndroidChart,好看用的人又多,但是好像當時剛出來,然後資料也不多,用起來也是各種問題,主要是API功能沒個明確的文件,導致學習成本很大,明明只是一個key-value的list資料,設定進去,設定設定字型顏色等顯示就行了,但是這些圖表庫都太大了,考慮的太多,然後需要你設定的東西就太多了,導致我感覺很不爽,所以就自己摸索著實現各種型別的圖表,使用起來及其簡單,因為自己實現就相當於只為自己的資料和專案來做的,幾乎上可以做到直接set資料,然後就顯示,超級棒,現在來記錄一下實現各種圖表庫的思路,以及用到的各種自定義View的知識,希望能對有需要的同學提供幫助,以下示例中均不適合直接使用,因為只是按照思路實現了個大概,沒進行各種防止錯誤的判斷,而且我們主要是學習思路以及聯絡各種繪圖API。

餅狀圖

效果如下:餅狀圖重點就是畫圓弧,至於中間要不要顯示成空心並且帶字,都可以照著你自己的想法來總結寫,但是一邊右側都會有一個列表來顯示對應的key-value。這是做餅狀圖的兩個基本組成部分。

在這裡插入圖片描述

玫瑰圖

玫瑰圖幾乎和餅狀圖是一樣的意義,只是表現形式不一樣,玫瑰圖更好看一點:
在這裡插入圖片描述

進度圓形圖

進度圖其實就比較簡單了,主要是會在中間空白的地方顯示一些進度數值
在這裡插入圖片描述

柱狀圖

柱狀圖其實也比較簡單,主要是畫座標系和柱子
在這裡插入圖片描述

折線圖

折線圖和餅狀圖幾乎是一型別,都是話座標系 然後計算出對應的座標,在那個位置畫圖形,如果了柱狀的話 那就是柱狀圖唄,畫了點並且連線了點與點之間那就是折線圖:
在這裡插入圖片描述