Created
June 30, 2014 14:46
-
-
Save Phonbopit/2a5113d23c16a701d8e6 to your computer and use it in GitHub Desktop.
PieChart using AChartEngine link : http://devahoy.com/2014/06/android-achartengine-tutorial-with-pie-chart/
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" | |
xmlns:tools="http://schemas.android.com/tools" | |
android:layout_width="match_parent" | |
android:layout_height="match_parent" | |
android:padding="12dp" | |
tools:context="com.devahoy.sample.achartengine.MainActivity$PlaceholderFragment" > | |
<RelativeLayout | |
android:id="@+id/graph_container" | |
android:layout_width="match_parent" | |
android:layout_height="match_parent" /> | |
</RelativeLayout> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
package com.devahoy.sample.achartengine; | |
import android.graphics.Color; | |
import android.os.Bundle; | |
import android.support.v4.app.Fragment; | |
import android.support.v7.app.ActionBarActivity; | |
import android.view.LayoutInflater; | |
import android.view.View; | |
import android.view.ViewGroup; | |
import android.widget.RelativeLayout; | |
import org.achartengine.ChartFactory; | |
import org.achartengine.GraphicalView; | |
import org.achartengine.model.CategorySeries; | |
import org.achartengine.renderer.DefaultRenderer; | |
import org.achartengine.renderer.SimpleSeriesRenderer; | |
public class PieChartActivity extends ActionBarActivity { | |
@Override | |
protected void onCreate(Bundle savedInstanceState) { | |
super.onCreate(savedInstanceState); | |
setContentView(R.layout.activity_main); | |
if (savedInstanceState == null) { | |
getSupportFragmentManager().beginTransaction() | |
.add(R.id.container, new PlaceholderFragment()) | |
.commit(); | |
} | |
} | |
/** | |
* A placeholder fragment containing a simple view. | |
*/ | |
public static class PlaceholderFragment extends Fragment { | |
public PlaceholderFragment() {} | |
private View mView; | |
private GraphicalView mGraphView; | |
@Override | |
public View onCreateView(LayoutInflater inflater, ViewGroup container, | |
Bundle savedInstanceState) { | |
View rootView = inflater.inflate(R.layout.fragment_main, container, false); | |
mView = rootView; | |
initData(); | |
return rootView; | |
} | |
private void initData() { | |
String[] codename = { | |
"KitKat", "Jelly Bean", "Ice Cream Sandwich", | |
"Gingerbread", "Froyo" | |
}; | |
double[] values = {13.6, 58.4, 12.3, 14.9, 0.8 }; | |
String[] colors = { | |
"#ff4444", "#99cc00", "#aa66cc", "#33b5e5", "#ffbb33" | |
}; | |
CategorySeries series = new CategorySeries("Android Platform Version"); | |
int length = codename.length; | |
for (int i = 0; i < length; i++) { | |
series.add(codename[i], values[i]); | |
} | |
DefaultRenderer renderer = new DefaultRenderer(); | |
for (int i = 0; i < length; i++) { | |
SimpleSeriesRenderer seriesRenderer = new SimpleSeriesRenderer(); | |
seriesRenderer.setColor(Color.parseColor(colors[i])); | |
renderer.addSeriesRenderer(seriesRenderer); | |
} | |
renderer.setChartTitleTextSize(60); | |
renderer.setChartTitle("Android Platform Version"); | |
renderer.setLabelsTextSize(30); | |
renderer.setLabelsColor(Color.GRAY); | |
renderer.setLegendTextSize(30); | |
drawChart(series, renderer); | |
} | |
private void drawChart(CategorySeries series, | |
DefaultRenderer renderer) { | |
if (null == mGraphView) { | |
mGraphView = | |
ChartFactory.getPieChartView(getActivity(), series, renderer); | |
RelativeLayout container = | |
(RelativeLayout) mView.findViewById(R.id.graph_container); | |
container.addView(mGraphView); | |
} else { | |
mGraphView.repaint(); | |
} | |
} | |
} | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment