MPAndroidChart之PieChart - 程式人生

文章推薦指數: 80 %
投票人數:10人

package com.wentong.administrator.mpandroid.activity; import android.graphics.Color; import android.graphics.Typeface; import android.os. 程式人生>android教程>MPAndroidChart之PieChart MPAndroidChart之PieChart •android教程•發佈:2018-10-08 MPAndroidChart之PieChart餅狀圖曾夢想仗劍走天涯,看一看世界的繁華。

效果圖: Activity: packagecom.wentong.administrator.mpandroid.activity; importandroid.graphics.Color; importandroid.graphics.Typeface; importandroid.os.Bundle; importandroid.support.annotation.Nullable; importandroid.support.v7.app.AppCompatActivity; importandroid.text.SpannableString; importandroid.text.style.ForegroundColorSpan; importandroid.text.style.RelativeSizeSpan; importandroid.text.style.StyleSpan; importcom.github.mikephil.charting.animation.Easing; importcom.github.mikephil.charting.charts.PieChart; importcom.github.mikephil.charting.components.Legend; importcom.github.mikephil.charting.components.YAxis; importcom.github.mikephil.charting.data.PieData; importcom.github.mikephil.charting.data.PieDataSet; importcom.github.mikephil.charting.data.PieEntry; importcom.github.mikephil.charting.utils.ColorTemplate; importcom.wentong.administrator.mpandroid.R; importjava.util.ArrayList; importjava.util.List; /** *CreatedbyAdministratoron2017/3/15. */ publicclassPieActivityextendsAppCompatActivity{ //申明控制元件 PieChartpieChart; @Override protectedvoidonCreate(@NullableBundlesavedInstanceState){ super.onCreate(savedInstanceState); //靜態載入佈局 setContentView(R.layout.activity_pie); //初始化介面 show(); } privatevoidshow(){ pieChart=(PieChart)findViewById(R.id.act_pie_pieChart); //如果啟用此選項,則圖表中的值將以百分比形式繪製,而不是以原始值繪製 pieChart.setUsePercentValues(true); //如果這個元件應該啟用(應該被繪製)FALSE如果沒有。

如果禁用,此元件的任何內容將被繪製預設 pieChart.getDescription().setEnabled(false); //將額外的偏移量(在圖表檢視周圍)附加到自動計算的偏移量 pieChart.setExtraOffsets(5,10,5,5); //較高的值表明速度會緩慢下降例如如果它設定為0,它會立即停止。

1是一個無效的值,並將自動轉換為0.999f。

pieChart.setDragDecelerationFrictionCoef(0.95f); //設定中間字型 pieChart.setCenterText("劉某人\n我彷彿聽到有人說我帥"); //設定為true將餅中心清空 pieChart.setDrawHoleEnabled(true); //套孔,繪製在PieChart中心的顏色 pieChart.setHoleColor(Color.WHITE); //設定透明圓應有的顏色。

pieChart.setTransparentCircleColor(Color.WHITE); //設定透明度圓的透明度應該有0=完全透明,255=完全不透明,預設值為100。

pieChart.setTransparentCircleAlpha(110); //設定在最大半徑的百分比餅圖中心孔半徑(最大=整個圖的半徑),預設為50% pieChart.setHoleRadius(58f); //設定繪製在孔旁邊的透明圓的半徑,在最大半徑的百分比在餅圖*(max=整個圖的半徑),預設55%->5%大於中心孔預設 pieChart.setTransparentCircleRadius(61f); //將此設定為true,以繪製顯示在piechart pieChart.setDrawCenterText(true); //集度的radarchart旋轉偏移。

預設270f-->頂(北) pieChart.setRotationAngle(0); //設定為true,使旋轉/旋轉的圖表觸控。

設定為false禁用它。

預設值:true pieChart.setRotationEnabled(true); //將此設定為false,以防止由抽頭姿態突出值。

值仍然可以通過拖動或程式設計高亮顯示。

預設值:真 pieChart.setHighlightPerTapEnabled(true); //建立Legend物件 Legendl=pieChart.getLegend(); //設定垂直對齊oftheLegend l.setVerticalAlignment(Legend.LegendVerticalAlignment.TOP); //設定水平oftheLegend l.setHorizontalAlignment(Legend.LegendHorizontalAlignment.RIGHT); //設定方向 l.setOrientation(Legend.LegendOrientation.VERTICAL); //其中哪一個將畫在圖表或外 l.setDrawInside(false); //設定水平軸上圖例項之間的間距 l.setXEntrySpace(7f); //設定在垂直軸上的圖例項之間的間距 l.setYEntrySpace(0f); //設定此軸上標籤的所使用的y軸偏移量更高的偏移意味著作為一個整體的Legend將被放置遠離頂部。

l.setYOffset(0f); //設定入口標籤的顏色。

pieChart.setEntryLabelColor(Color.WHITE); //設定入口標籤的大小。

預設值:13dp pieChart.setEntryLabelTextSize(12f); //模擬的資料來源 PieEntryx1=newPieEntry(15.8f,"one",R.color.colorAccent); PieEntryx2=newPieEntry(15.8f,"two"); PieEntryx3=newPieEntry(15.8f,"three"); PieEntryx4=newPieEntry(15.8f,"four"); PieEntryx5=newPieEntry(15.8f,"five"); PieEntryx6=newPieEntry(15.8f,"six"); PieEntryx7=newPieEntry(15.8f,"seven"); PieEntryx8=newPieEntry(15.8f,"eight"); PieEntryx9=newPieEntry(15.8f,"nine"); PieEntryx10=newPieEntry(15.8f,"ten"); //新增到List集合 Listlist=newArrayList<>(); list.add(x1); list.add(x2); list.add(x3); list.add(x4); list.add(x5); list.add(x6); list.add(x7); list.add(x8); list.add(x9); list.add(x10); //設定到PieDataSet物件 PieDataSetset=newPieDataSet(list,"表一"); set.setDrawValues(false);//設定為true,在圖表繪製y set.setAxisDependency(YAxis.AxisDependency.LEFT);//設定Y軸,這個資料集應該被繪製(左或右)。

預設值:左 set.setAutomaticallyDisableSliceSpacing(false);//當啟用時,片間距將是0時,最小值要小於片間距本身 set.setSliceSpace(5f);//間隔 set.setSelectionShift(10f);//點選伸出去的距離 /** *設定該資料集前應使用的顏色。

顏色使用只要資料集所代表的條目數目高於顏色陣列的大小。

*如果您使用的顏色從資源,確保顏色已準備好(通過呼叫getresources()。

getColor(…))之前,將它們新增到資料集 **/ ArrayListcolors=newArrayList(); for(intc:ColorTemplate.VORDIPLOM_COLORS) colors.add(c); for(intc:ColorTemplate.JOYFUL_COLORS) colors.add(c); for(intc:ColorTemplate.COLORFUL_COLORS) colors.add(c); for(intc:ColorTemplate.LIBERTY_COLORS) colors.add(c); for(intc:ColorTemplate.PASTEL_COLORS) colors.add(c); colors.add(ColorTemplate.getHoloBlue()); set.setColors(colors); //傳入PieData PieDatadata=newPieData(set); //為圖表設定新的資料物件 pieChart.setData(data); //重新整理 pieChart.invalidate(); //動畫圖上指定的動畫時間軸的繪製 pieChart.animateY(1400,Easing.EasingOption.EaseInOutQuad); } } XML: MPAndroidChart繪製淺析 «上一篇 WindowManager使用FLAG_NOT_TOUCH_MODAL後Listview和Editext輸入法無響應下一篇» 相關推薦 Android開發學習之路--圖表實現(achartengine/MPAndroidChart)之初體驗 bundle喜歡嵌入式linuxY軸tidrenscarefjava代碼 ??已經有一段... 為MPAndroidChart之RadarChart新增lable新增點選事件 關於RadarChart 先貼上MPAndroidChart的GitHub上地址:https://github.com/PhilJay/MPAn... MPAndroidChart之ValueFormatter 在圖表中,大多數情況下需要我們自己定義X軸和Y軸的Labels,系統也提供給了我們一個介面IAxisValueF... MPAndroidChart之LineChart使用 1.寫在前面 我很糾結著標題該怎麼取,因為對於這個圖表框架我只使用了linechart,但是用的非常非常的多,... MPAndroidChart之CombinedChart組合圖簡單使用 佈局程式碼: packagecom.test.demo.demo; importandroid.... Android之MPAndroidChart庫——雙柱狀圖,X軸顯示漢字 publicstaticvoidsetTwoBarChart(BarChartbarChart,ListxAxisVal... 統計圖表之MPAndroidChart曲線圖解說 packagecom.example.mpchart; importjava.util.ArrayList; importandroid.app.Ac... Android之MPAndroidChart的動態柱形圖 匯入MPAndroidChart的jar包以後就寫個工具類:packageitsoha.com.tffic.Utils; ... Android之玩轉MPAndroidChart讓(折線圖、柱形圖、餅狀圖、雜湊圖、雷達圖)優雅的舞動 packagecom.example.chenyu.mpandroidcharttest; importandroid.app.Fragment; imp... 搜尋 基礎教學 WIN技巧 python技巧 linux技巧 mysql技巧 php技巧 Html教程 JS教程 java教程 net教程 IOS教程 最近訪問 MPAndroidChart之PieChart Android+系統Action大全 Uploading+Multiple+Images+in+Parallel+with+Async+and+LINQ+to+Twitter Java實現MD5加密 React+Native世界的/"Hello+World/" 資料提取----httpclient,htmlparser,xpath cmd+/c和cmd+/k+以及CMD命令 APICloud開發app前端頁面結構 mysql+建立函式+error+Code:+1227.+Access+denied; 為什麼Ruby堪稱開發人員簡歷中的一顆耀眼明珠_Ruby



請為這篇文章評分?