1 2 package com.xxmassdeveloper.mpchartexample; 3 4 import android.content.Intent; 5 import android.net.Uri; 6 import android.os.Bundle; 7 import android.view.Menu; 8 import android.view.MenuItem; 9 import android.view.WindowManager; 10 11 import com.github.mikephil.charting.charts.BarChart; 12 import com.github.mikephil.charting.components.XAxis; 13 import com.github.mikephil.charting.components.XAxis.XAxisPosition; 14 import com.github.mikephil.charting.data.BarData; 15 import com.github.mikephil.charting.data.BarDataSet; 16 import com.github.mikephil.charting.data.BarEntry; 17 import com.github.mikephil.charting.utils.ColorTemplate; 18 import com.xxmassdeveloper.mpchartexample.notimportant.DemoBase; 19 20 import java.util.ArrayList; 21 22 @SuppressWarnings("SameParameterValue") 23 public class ScrollViewActivity extends DemoBase { 24 25 private BarChart chart; 26 27 @Override onCreate(Bundle savedInstanceState)28 protected void onCreate(Bundle savedInstanceState) { 29 super.onCreate(savedInstanceState); 30 getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, 31 WindowManager.LayoutParams.FLAG_FULLSCREEN); 32 setContentView(R.layout.activity_scrollview); 33 34 setTitle("ScrollViewActivity"); 35 36 chart = findViewById(R.id.chart1); 37 38 chart.getDescription().setEnabled(false); 39 40 // scaling can now only be done on x- and y-axis separately 41 chart.setPinchZoom(false); 42 43 chart.setDrawBarShadow(false); 44 chart.setDrawGridBackground(false); 45 46 XAxis xAxis = chart.getXAxis(); 47 xAxis.setPosition(XAxisPosition.BOTTOM); 48 xAxis.setDrawGridLines(false); 49 50 chart.getAxisLeft().setDrawGridLines(false); 51 52 chart.getLegend().setEnabled(false); 53 54 setData(10); 55 chart.setFitBars(true); 56 } 57 setData(int count)58 private void setData(int count) { 59 60 ArrayList<BarEntry> values = new ArrayList<>(); 61 62 for (int i = 0; i < count; i++) { 63 float val = (float) (Math.random() * count) + 15; 64 values.add(new BarEntry(i, (int) val)); 65 } 66 67 BarDataSet set = new BarDataSet(values, "Data Set"); 68 set.setColors(ColorTemplate.VORDIPLOM_COLORS); 69 set.setDrawValues(false); 70 71 BarData data = new BarData(set); 72 73 chart.setData(data); 74 chart.invalidate(); 75 chart.animateY(800); 76 } 77 78 @Override onCreateOptionsMenu(Menu menu)79 public boolean onCreateOptionsMenu(Menu menu) { 80 getMenuInflater().inflate(R.menu.only_github, menu); 81 return true; 82 } 83 84 @Override onOptionsItemSelected(MenuItem item)85 public boolean onOptionsItemSelected(MenuItem item) { 86 87 switch (item.getItemId()) { 88 case R.id.viewGithub: { 89 Intent i = new Intent(Intent.ACTION_VIEW); 90 i.setData(Uri.parse("https://github.com/PhilJay/MPAndroidChart/blob/master/MPChartExample/src/com/xxmassdeveloper/mpchartexample/ScrollViewActivity.java")); 91 startActivity(i); 92 break; 93 } 94 } 95 96 return true; 97 } 98 99 @Override saveToGallery()100 public void saveToGallery() { /* Intentionally left empty */ } 101 } 102