1. 程式人生 > >Android 折線圖之hellocharts (餅狀圖)餅圖

Android 折線圖之hellocharts (餅狀圖)餅圖

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>
<color 
name="discount"
>#FE9506</color>
string佈局檔案
<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

注意:學習還是要動腦子的,不是拿來就能用的。