Advertisement
Guest User

Untitled

a guest
Oct 11th, 2011
424
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 7.55 KB | None | 0 0
  1. BarGraphActivity.java
  2.  
  3. public class BarGraphActivity extends Activity implements OnItemClickListener{
  4.  
  5. View mView;
  6. ArrayList<String> arrList = new ArrayList<String>();
  7. LinearLayout layout ;
  8. boolean flag = false;
  9. ArrayAdapter<String> adapter;
  10. @Override
  11. public void onCreate(Bundle savedInstanceState) {
  12. super.onCreate(savedInstanceState);
  13. setContentView(R.layout.main);
  14.  
  15. arrList.add("Bar");
  16. arrList.add("Line");
  17.  
  18. ListView mListView = (ListView) findViewById(R.id.list_view);
  19. layout = (LinearLayout)findViewById(R.id.i_l);
  20. // mListView.setVerticalScrollBarEnabled(false);
  21. mListView.setOnItemClickListener(this);
  22. adapter = new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, arrList);
  23. mListView.setAdapter(adapter);
  24.  
  25. }
  26.  
  27. @Override
  28. public void onItemClick(AdapterView<?> arg0, View arg1, int position, long arg3) {
  29.  
  30. if(position == 0){
  31.  
  32. // ChartFactory can return View or Intent
  33.  
  34. XYMultipleSeriesRenderer renderer = Bar_Chart.getBarDemoRenderer();
  35. layout.removeAllViews();
  36. mView = ChartFactory.getBarChartView(this, Bar_Chart.getBarDemoDataset(), renderer, Type.DEFAULT);
  37. mView.setLayoutParams(new LayoutParams(LinearLayout.LayoutParams.WRAP_CONTENT, LinearLayout.LayoutParams.WRAP_CONTENT) );
  38. layout.addView(mView);
  39. }
  40. else if (position == 1) {
  41.  
  42. layout.removeAllViews();
  43. mView = ChartFactory.getLineChartView(this, Line_Chart.getLineDemoDataset(), Line_Chart.getLineDemoRenderer());
  44. mView.setLayoutParams(new LayoutParams(LinearLayout.LayoutParams.WRAP_CONTENT, LinearLayout.LayoutParams.WRAP_CONTENT) );
  45. layout.addView(mView);
  46. }
  47. }
  48. }
  49.  
  50.  
  51. Bar_Chart.java
  52.  
  53. public class Bar_Chart {
  54.  
  55. public static XYMultipleSeriesRenderer getBarDemoRenderer() {
  56. XYMultipleSeriesRenderer renderer = new XYMultipleSeriesRenderer();
  57.  
  58. // renderer.setFitLegend(true);
  59. // renderer.setZoomButtonsVisible(true);
  60. // renderer.setFitLegend(true);
  61.  
  62. renderer.setAxisTitleTextSize(16); // Title of X-Axis & Y-Axis
  63. renderer.setAxesColor(Color.RED);
  64. renderer.setChartTitleTextSize(20); // Title Size
  65. renderer.setLabelsTextSize(15); // Label's on X-Axis and Y-Axis
  66. renderer.setLabelsColor(Color.WHITE);
  67. renderer.setLegendTextSize(15); // Legend Size(Demo series1, Demo series2)
  68. renderer.setMargins(new int[] {20, 30, 15, 0}); // {margin from top, margin from left , margin from bottom, margin from right}
  69.  
  70. // First Single Renederer
  71. SimpleSeriesRenderer r = new SimpleSeriesRenderer();
  72. r.setColor(Color.WHITE);
  73. renderer.addSeriesRenderer(r);
  74.  
  75. // // Second Single Renederer
  76. // r = new SimpleSeriesRenderer();
  77. // r.setColor(Color.GREEN);
  78. // renderer.addSeriesRenderer(r);
  79. //
  80. // // Third Single Renederer
  81. // r = new SimpleSeriesRenderer();
  82. // r.setColor(Color.CYAN);
  83. // renderer.addSeriesRenderer(r);
  84. //
  85. // // Fourth Single Renederer
  86. // r = new SimpleSeriesRenderer();
  87. // r.setColor(Color.WHITE);
  88. // renderer.addSeriesRenderer(r);
  89.  
  90. /*
  91. *
  92. * Dataset and renderer should be not null and should have the same number of series
  93. *
  94. */
  95.  
  96. return renderer;
  97. }
  98.  
  99. // public static void setChartSettings(XYMultipleSeriesRenderer renderer) {
  100. // renderer.setChartTitle("Chart demo");
  101. // renderer.setXTitle("x values");
  102. // renderer.setYTitle("y values");
  103. // renderer.setXAxisMin(0.5);
  104. // renderer.setXAxisMax(20.5);
  105. // renderer.setYAxisMin(0);
  106. // renderer.setYAxisMax(210);
  107. // }
  108.  
  109. public static XYMultipleSeriesDataset getBarDemoDataset() {
  110. XYMultipleSeriesDataset dataset = new XYMultipleSeriesDataset();
  111. // final int nr = 10;
  112. final int dataSet_Renderer = 1;
  113. // Random r = new Random();
  114. Integer[] point_to_plot = new Integer[]{100,2,3,4,5,6,7,8,9,10,34,56,32,98,54,78,12,34,23,1};
  115. for (int i = 0; i < dataSet_Renderer; i++) {
  116. CategorySeries series = new CategorySeries("Demo series " + (i + 1));
  117. for (int position = 0; position < point_to_plot.length; position++) {
  118.  
  119. // 100 + r.nextInt() % 100;
  120. series.add(point_to_plot[position]);
  121. }
  122. dataset.addSeries(series.toXYSeries());
  123. }
  124. return dataset;
  125. }
  126. }
  127.  
  128.  
  129. Line_Chart.java
  130.  
  131. public class Line_Chart {
  132.  
  133. public static XYMultipleSeriesDataset getLineDemoDataset() {
  134. XYMultipleSeriesDataset dataset = new XYMultipleSeriesDataset();
  135. final int dataSet_Renderer = 1;
  136. Integer[] point_to_plot = new Integer[]{100,2,3,4,5,6,7,8,9,10,34,56,32,98,54,78,12,34,23,1};
  137. for (int i = 0; i < dataSet_Renderer; i++) {
  138. XYSeries series = new XYSeries("Demo series " + (i + 1));
  139. for (int k = 0; k < point_to_plot.length; k++) {
  140.  
  141. series.add(k, point_to_plot[k]);
  142. }
  143. dataset.addSeries(series);
  144. }
  145. return dataset;
  146. }
  147.  
  148. public static XYMultipleSeriesRenderer getLineDemoRenderer() {
  149. XYMultipleSeriesRenderer renderer = new XYMultipleSeriesRenderer();
  150.  
  151. // renderer.setChartTitle("Chart demo");
  152. // renderer.setXTitle("x values");
  153. // renderer.setYTitle("y values");
  154. // renderer.setXAxisMin(0.5);
  155. // renderer.setXAxisMax(20.5);
  156. // renderer.setYAxisMin(0);
  157. // renderer.setYAxisMax(210);
  158.  
  159. // renderer.setZoomButtonsVisible(true);
  160.  
  161. renderer.setAxisTitleTextSize(16);
  162. renderer.setChartTitleTextSize(20);
  163. renderer.setLabelsTextSize(15);
  164. renderer.setLegendTextSize(15);
  165. renderer.setPointSize(5f);
  166. renderer.setMargins(new int[] {20, 30, 15, 0});
  167.  
  168. XYSeriesRenderer r = new XYSeriesRenderer();
  169.  
  170. // r.setColor(Color.BLUE);
  171. // r.setPointStyle(PointStyle.SQUARE);
  172. // r.setFillBelowLine(true);
  173. // r.setFillBelowLineColor(Color.WHITE);
  174. // r.setFillPoints(true);
  175. // renderer.addSeriesRenderer(r);
  176.  
  177. r = new XYSeriesRenderer();
  178. r.setPointStyle(PointStyle.SQUARE);
  179. r.setColor(Color.RED);
  180. r.setFillPoints(true);
  181. renderer.addSeriesRenderer(r);
  182.  
  183. renderer.setAxesColor(Color.LTGRAY);
  184. renderer.setLabelsColor(Color.LTGRAY);
  185. return renderer;
  186. }
  187. }
  188.  
  189. AndroidManifest file(Don't forget to include the jar file)
  190.  
  191. <?xml version="1.0" encoding="utf-8"?>
  192. <manifest xmlns:android="http://schemas.android.com/apk/res/android"
  193. package="com.bar"
  194. android:versionCode="1"
  195. android:versionName="1.0">
  196. <uses-sdk android:minSdkVersion="8" />
  197. <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"></uses-permission>
  198.  
  199. <application android:icon="@drawable/icon" android:label="@string/app_name">
  200. <activity android:name=".BarGraphActivity"
  201. android:label="@string/app_name" android:configChanges="keyboardHidden|orientation">
  202. <intent-filter>
  203. <action android:name="android.intent.action.MAIN" />
  204. <category android:name="android.intent.category.LAUNCHER" />
  205. </intent-filter>
  206. </activity>
  207. <activity android:name="org.achartengine.GraphicalActivity" />
  208. </application>
  209. </manifest>
  210.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement