Android 折線圖之hellocharts (餅狀圖)餅圖
阿新 • • 發佈:2019-02-11
color佈局檔案
<color name="cash">#C0FF8C</color> <color name="wechat">#FFF78C</color> <color name="alipay">#FFD08B</color> <color name="bankcard">#8BEAFD</color> <color name="membershipcard">#FF8C9C</color> <color name="coupon">#D94E8A</color> <colorstring佈局檔案name="discount">#FE9506</color>
<string name="CashText">現金</string> <string name="WeChatText">微信</string> <string name="AliPayText">支付寶</string> <string name="BankcardText">銀行卡</string> <string name="MembershipText">會員卡</string> <string有顏色提示的餅圖佈局name="CouponsText">優惠券</string> <string name="DiscountText">打折</string>
<LinearLayout android:layout_width="match_parent" android:layout_height="0dp" android:layout_weight="1" android:orientation="horizontal"> <LinearLayout android:layout_width="0dp" android:layout_height=餅圖:控制元件屬性自己設定"wrap_content" android:layout_gravity="center_vertical" android:layout_weight="1" android:orientation="vertical"> <LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:gravity="center_vertical" android:orientation="horizontal"> <ImageView android:layout_width="20dp" android:layout_height="8dp" android:background="@color/cash" /> <TextView android:id="@+id/textView6" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/CashText" android:textSize="12sp" /> </LinearLayout> <LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:gravity="center_vertical" android:orientation="horizontal"> <ImageView android:layout_width="20dp" android:layout_height="8dp" android:background="@color/wechat" /> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/WeChatText" android:textSize="12sp" /> </LinearLayout> <LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:gravity="center_vertical" android:orientation="horizontal"> <ImageView android:layout_width="20dp" android:layout_height="8dp" android:background="@color/alipay" /> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/AliPayText" android:textSize="12sp" /> </LinearLayout> <LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:gravity="center_vertical" android:orientation="horizontal"> <ImageView android:layout_width="20dp" android:layout_height="8dp" android:background="@color/bankcard" /> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/BankcardText" android:textSize="12sp" /> </LinearLayout> <LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:gravity="center_vertical" android:orientation="horizontal"> <ImageView android:layout_width="20dp" android:layout_height="8dp" android:background="@color/membershipcard" /> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/MembershipText" android:textSize="12sp" /> </LinearLayout> <LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:gravity="center_vertical" android:orientation="horizontal"> <ImageView android:layout_width="20dp" android:layout_height="8dp" android:background="@color/coupon" /> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/CouponsText" android:textSize="12sp" /> </LinearLayout> <LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:gravity="center_vertical" android:orientation="horizontal"> <ImageView android:layout_width="20dp" android:layout_height="8dp" android:background="@color/discount" /> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/DiscountText" android:textSize="12sp" /> </LinearLayout> </LinearLayout> <lecho.lib.hellocharts.view.PieChartView android:id="@+id/sr_pcv" android:layout_width="0dp" android:layout_height="match_parent" android:layout_weight="4" /> </LinearLayout>
<lecho.lib.hellocharts.view.PieChartView
android:id="@+id/sr_pcv"
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="1"
android:background="@color/reddish" />
java程式碼中需要設定的引數private void initPicChar() {//初始化餅圖 pieList = new ArrayList<SliceValue>(); /** * 總共的錢數 */ Float money_count = Float.parseFloat(trade_money) + parseFloat(trade_weichat_money) + parseFloat(trade_alipay_money) + parseFloat(trade_bank_money) + parseFloat(trade_vip_money) + parseFloat(trade_coupon_money) + parseFloat(discount); SliceValue sliceValue = null; for (int i = 0; i < listPays.size(); i++) { if (listPays.get(i).getName().equals("現金")) { float xianjin = Float.parseFloat(trade_money) / money_count * 100; //建立一個新的值 sliceValue = new SliceValue(); //設定每個扇形區域的值,float型 sliceValue.setValue(xianjin); //設定每個扇形區域的顏色 sliceValue.setColor(Color.GREEN); //設定每個扇形區域的Lable,不設定的話,預設顯示數值 // sliceValue.setLabel(listPays.get(i).getPrice()+"現金"); }else if (listPays.get(i).getName().equals("微信")) { float weixin = Float.parseFloat(trade_weichat_money) / money_count * 100; //建立一個新的值 sliceValue = new SliceValue(); //設定每個扇形區域的值,float型 sliceValue.setValue(weixin); //設定每個扇形區域的顏色 sliceValue.setColor(Color.YELLOW); //設定每個扇形區域的Lable,不設定的話,預設顯示數值 // sliceValue.setLabel("現金"); }else if (listPays.get(i).getName().equals("支付寶")) { float zhifubao = Float.parseFloat(trade_alipay_money) / money_count * 100; //建立一個新的值 sliceValue = new SliceValue(); //設定每個扇形區域的值,float型 sliceValue.setValue(zhifubao); //設定每個扇形區域的顏色 sliceValue.setColor(Color.BLUE); //設定每個扇形區域的Lable,不設定的話,預設顯示數值 // sliceValue.setLabel("現金"); }else if (listPays.get(i).getName().equals("銀行卡")) { float yinhangka = Float.parseFloat(trade_bank_money) / money_count * 100; //建立一個新的值 sliceValue = new SliceValue(); //設定每個扇形區域的值,float型 sliceValue.setValue(yinhangka); //設定每個扇形區域的顏色 sliceValue.setColor(Color.BLUE); //設定每個扇形區域的Lable,不設定的話,預設顯示數值 // sliceValue.setLabel("現金"); }else if (listPays.get(i).getName().equals("會員卡")) { float huiyuanka = Float.parseFloat(trade_vip_money) / money_count * 100; //建立一個新的值 sliceValue = new SliceValue(); //設定每個扇形區域的值,float型 sliceValue.setValue(huiyuanka); //設定每個扇形區域的顏色 sliceValue.setColor(Color.BLACK); //設定每個扇形區域的Lable,不設定的話,預設顯示數值 // sliceValue.setLabel("現金"); }else if (listPays.get(i).getName().equals("優惠券")) { float youhuiquan = Float.parseFloat(trade_coupon_money) / money_count * 100; //建立一個新的值 sliceValue = new SliceValue(); //設定每個扇形區域的值,float型 sliceValue.setValue(youhuiquan); //設定每個扇形區域的顏色 sliceValue.setColor(Color.GREEN); //設定每個扇形區域的Lable,不設定的話,預設顯示數值 // sliceValue.setLabel("現金"); }else if (listPays.get(i).getName().equals("打折")) { float dazhe = Float.parseFloat(discount) / money_count * 100; //建立一個新的值 sliceValue = new SliceValue(); //設定每個扇形區域的值,float型 sliceValue.setValue(dazhe); //設定每個扇形區域的顏色 sliceValue.setColor(Color.RED); //設定每個扇形區域的Lable,不設定的話,預設顯示數值 // sliceValue.setLabel("現金"); } pieList.add(sliceValue); } PieChartData data = new PieChartData(pieList); data.setHasLabels(true); data.setHasLabelsOnlyForSelected(false); data.setHasLabelsOutside(true); srPcv.setPieChartData(data);//設定餅圖資料 // srPcv.callTouchListener(); // srPcv.setChartRotation(); // srPcv.isChartRotationEnabled(); }給折線圖的資料設定背景及顏色:https://blog.csdn.net/chenzheng8975/article/details/78143604設定點的大小及顏色:https://blog.csdn.net/qq_35563053/article/details/65628813參考連結:https://blog.csdn.net/u010151514/article/details/52062052
https://blog.csdn.net/u012534831/article/details/51505683
注意:學習還是要動腦子的,不是拿來就能用的。