Utilizei a API Achartengine, disponível para download aqui: http://www.achartengine.org/
Depois de adicionar a API no Build Path do projeto podemos começar.
Existem diversas propriedades da api que não conheço ainda mais pelo que já pesquisei encontrei algumas coisas bem interessantes. Segue o exemplo:
- public class BarGraphActivity extends Activity{
- private GraphicalView mChartView;
- @Override
- protected void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
- setContentView(R.layout.bar_char_activity);
- createChart();
- }
- public void createChart(){
- int[] valores = {6, 7, 5, 3};
- CategorySeries series = new CategorySeries("Grafico de barras");
- for (int i = 0; i < valores.length; i++) {
- series.add(valores[i]);
- }
- XYMultipleSeriesDataset dataset = new XYMultipleSeriesDataset();
- dataset.addSeries(series.toXYSeries());
- XYMultipleSeriesRenderer renderer = getBarDemoRenderer();
- setChartSettings(renderer);
- LinearLayout layout = (LinearLayout) findViewById(R.id.layout_chart);
- mChartView = ChartFactory.getBarChartView(this, getBarDemoDataset(),
- renderer, Type.DEFAULT);
- layout.addView(mChartView);
- }
- private XYMultipleSeriesDataset getBarDemoDataset() {
- XYMultipleSeriesDataset dataset = new XYMultipleSeriesDataset();
- int[] valores = {6, 7, 5, 3};
- CategorySeries series = new CategorySeries("Demo series");
- for (int i = 0; i < valores.length; i++) {
- series.add(valores[i]);
- }
- dataset.addSeries(series.toXYSeries());
- return dataset;
- }
- public XYMultipleSeriesRenderer getBarDemoRenderer() {
- XYMultipleSeriesRenderer renderer = new XYMultipleSeriesRenderer();
- renderer.setAxisTitleTextSize(16);
- renderer.setBarSpacing(1);
- renderer.setLegendTextSize(15);
- SimpleSeriesRenderer r = new SimpleSeriesRenderer();
- r.setColor(Color.YELLOW);
- renderer.addSeriesRenderer(r);
- return renderer;
- }
- private void setChartSettings(XYMultipleSeriesRenderer renderer) {
- renderer.setShowLegend(false);
- renderer.setAxesColor(Color.DKGRAY);
- renderer.setXAxisMin(0.5);
- renderer.setXAxisMax(12.5);
- renderer.setYAxisMin(0);
- renderer.setYLabelsAlign(Align.RIGHT);
- renderer.setXLabels(0);
- renderer.setZoomEnabled(false, false);
- renderer.setShowCustomTextGrid(true);
- renderer.setShowGridY(true);
- renderer.setShowGridX(true);
- renderer.addXTextLabel(1, "Jan");
- renderer.addXTextLabel(2, "Fev");
- renderer.addXTextLabel(3, "Mar");
- renderer.addXTextLabel(4, "Abr");
- }
- }
E o resultado disso tudo ficará assim:
Qualquer dúvida que tiverem tentarei ajudar, no site tem uma documentação legal e lá também está disponível para download um projeto com alguns exemplos utilizando outros tipos de gráficos.
Até a próxima...
Como fica o xml para gerar esse gráfico ?
ResponderExcluirAssim:
ExcluirOye sabes ¿como puedo hacerle para quitar el contorno negro o darle color?
ResponderExcluirBoa tarde,
ResponderExcluirFeliz 2016...
Tem algum exemplo utilizando Banco de Dados?
Parabéns pelo post.
Att.
Jr.
Boa tarde,
ResponderExcluirFeliz 2016...
Tem algum exemplo utilizando Banco de Dados?
Parabéns pelo post.
Att.
Jr.