Apart, first
The core code is as follows:
Private voidinitlabelchat (View rootview) {NumberFormat NF=NewDecimalFormat ("#.# hours"); FinalDefaultrenderer renderer =NewDefaultrenderer (); FinalCategoryseries Series =NewCategoryseries (""); LinearLayout Layout=(LinearLayout) rootview. Findviewbyid (R.id.pie_statistic_by_label); FinalGraphicalview ChartView =Chartfactory.getpiechartview (Getactivity (), series, renderer); Chartview.setonclicklistener (NewView.onclicklistener () {@Override Public voidOnClick (View v) {seriesselection seriesselection=ChartView. Getcurrentseriesandpoint (); if(Seriesselection = =NULL) { /** Toast.maketext (Getactivity (), * "No chart element selected", toast.length_s Hort). Show (); */ } Else { for(inti = 0; I < Series.getitemcount (); i++) {Renderer.getseriesrendererat (i). sethighlighted (i==Seriesselection.getpointindex ()); } chartview.repaint (); } } }); Renderer.setclickenabled (true); Renderer.setpanenabled (false); Renderer.setdisplayvalues (false); Layout.addview (ChartView,NewLayoutparams (700, 700)); Renderer.setzoombuttonsvisible (false); Renderer.setzoomenabled (false); Renderer.setdisplayvalues (true); Renderer.setshowlegend (false); Renderer.setlabelstextsize (30f); Renderer.setlabelscolor (Color.dkgray); Renderer.setshowgrid (true); Renderer.setantialiasing (true); Series.add ("Sample 1", 5); Simpleseriesrenderer Seriesrenderer=NewSimpleseriesrenderer (); Seriesrenderer.setgradientenabled (true); Seriesrenderer.setchartvaluesformat (NF); Seriesrenderer.setgradientstart (0, Color.rgb (0x04, 0xa3, 0xFF)); Seriesrenderer.setgradientstop (0.8, Color.rgb (0x00, 0x89, 0xd8)); Seriesrenderer.setdisplaychartvalues (false); Renderer.addseriesrenderer (Seriesrenderer); Series.add ("Sample 2", 8); Seriesrenderer=NewSimpleseriesrenderer (); Seriesrenderer.setgradientenabled (true); Seriesrenderer.setchartvaluesformat (NF); Seriesrenderer.setgradientstart (0, Color.rgb (0xFF, 0xb0, 0x0d)); Seriesrenderer.setgradientstop (0.8, Color.rgb (0xce, 0x97, 0x00)); Seriesrenderer.setdisplaychartvalues (false); Renderer.addseriesrenderer (Seriesrenderer); Series.add ("Sample 3", 6); Seriesrenderer=NewSimpleseriesrenderer (); Seriesrenderer.setgradientenabled (true); Seriesrenderer.setchartvaluesformat (NF); Seriesrenderer.setgradientstart (0, Color.rgb (0x00, 0XBC, 0x66)); Seriesrenderer.setgradientstop (0.8, Color.rgb (0x01, 0x80, 0x46)); Seriesrenderer.setdisplaychartvalues (false); Renderer.addseriesrenderer (Seriesrenderer); Series.add ("Sample 4", 3); Seriesrenderer=NewSimpleseriesrenderer (); Seriesrenderer.setgradientenabled (true); Seriesrenderer.setchartvaluesformat (NF); Seriesrenderer.setgradientstart (0, Color.rgb (0xFF, 0x6e, 0xf6)); Seriesrenderer.setgradientstop (0.8, Color.rgb (0xFF, 0x00, 0xde)); Seriesrenderer.setdisplaychartvalues (false); Renderer.addseriesrenderer (Seriesrenderer); Chartview.repaint (); }
It's really simple, set the gradient on, and then set the gradient color
Seriesrenderer.setgradientenabled (TRUE);
Seriesrenderer.setgradientstart (0, Color.rgb (0x04, 0xa3, 0xff));
Seriesrenderer.setgradientstop (0.8, Color.rgb (0x00, 0x89, 0xd8));
There is also a way to set the pie chart value by first creating a NumberFormat
NumberFormat NF = new DecimalFormat ("#.# hours");
Then call the following method to
Seriesrenderer.setchartvaluesformat (NF);