Android – los temas del gráfico de barras achartengine

Yo uso achartengine para dibujar mi gráfico en una aplicación de Android y tienen 2 problemas con gráfico de barras.

1: los valores en la barra superior no alinean el centro

2: anchura de la barra demasiado pequeña cuando sólo 1 barra en la tabla

Introduzca aquí la descripción de la imagen

Introduzca aquí la descripción de la imagen

Aquí mi código para configurar el gráfico

GraphicalView mChart; // Creating an XYSeries for Income XYSeries incomeSeries = new XYSeries("\n" + note); // Adding data to Series // Arraylist<String> althongtin include input data (some numbers character, eg: {125, 4356, 50000}) for(int i=0;i<althongtin.size();i++){ incomeSeries.add(i, Double.parseDouble(althongtin.get(i))); } // Creating a dataset to hold each series XYMultipleSeriesDataset dataset = new XYMultipleSeriesDataset(); // Adding Income Series to the dataset dataset.addSeries(incomeSeries); XYSeriesRenderer incomeRenderer = new XYSeriesRenderer(); incomeRenderer.setColor(color); incomeRenderer.setChartValuesTextSize(20); incomeRenderer.setFillPoints(true); incomeRenderer.setDisplayChartValues(true); incomeRenderer.setChartValuesTextAlign(Paint.Align.CENTER); XYMultipleSeriesRenderer multiRenderer = new XYMultipleSeriesRenderer(); multiRenderer.setXLabels(0); multiRenderer.setChartTitle(ten); multiRenderer.setXTitle(cotx); multiRenderer.setYTitle(coty); multiRenderer.setYLabelsAlign(Paint.Align.LEFT); multiRenderer.setBarSpacing(1); multiRenderer.setBarWidth(50); multiRenderer.setYAxisMin(0); multiRenderer.setYAxisMax(max + (max/10)); multiRenderer.setXAxisMin(-1); multiRenderer.setXAxisMax(althongtin.size() + 1); multiRenderer.setLabelsTextSize(15); multiRenderer.setLegendTextSize(20); multiRenderer.setAxisTitleTextSize(20); multiRenderer.setChartTitleTextSize(20); multiRenderer.setLabelsColor(Color.BLACK); multiRenderer.setAxesColor(Color.BLACK); multiRenderer.setApplyBackgroundColor(true); multiRenderer.setBackgroundColor(Color.TRANSPARENT); multiRenderer.setMarginsColor(Color.argb(0,255,255,255)); multiRenderer.setXLabelsColor(Color.BLACK); multiRenderer.setYLabelsColor(0, Color.BLACK); multiRenderer.addSeriesRenderer(incomeRenderer); String[] types = new String[] {BarChart.TYPE}; mChart = (GraphicalView) ChartFactory.getCombinedXYChartView(getBaseContext(), dataset, multiRenderer, types); multiRenderer.setClickEnabled(true); multiRenderer.setSelectableBuffer(10); chartLayout.addView(mChart); 

Gracias.

Actualizado: el segundo problema se soluciona mediante la actualización a achartengine 1.2.0. Gracias, Dan.

Para el primer problema, es posible que desee actualizar a la construcción de 1,2.0 por noche.

Para el segundo, hay: renderer.setBarWidth(widthInPixels); Ya que estas son las soluciones para establecer el ancho de la barra cuando hay un solo elemento en la serie.

¿Por qué no usar ChartFactory.getBarChartView lugar de ChartFactory.getCombinedXYChartIntent ?

Creo que va a arreglar el problema ur.

  • Cómo configurar las etiquetas de los ejes X e Y en el gráfico de línea dual utilizando aChartEngine en android?
  • Gráfico de línea de AchartEngine Xaxis Android
  • Combinación de dos gráficos de barras y dos líneas utilizando aChartEngine en Android
  • Gráfico de barras completo en pantalla en AchartEngine
  • AChartEngine fondo transparente
  • ¿Cómo puedo configurar mi propio tipo de letra en el renderizador AChartEngine?
  • Cómo detener el desplazamiento de AChartEngine gráfico de línea dinámica a lo largo del eje y?
  • Bibliotecas de gráficos Android
  • Cómo hacer el espacio entre barras en bargraph usando Achartengine si cada barra es diferente color contaning diferentes valores
  • Ubicación de la leyenda de Achartengine
  • Barra que se solapa con el eje Y cuando se filtra en el aChartEngine
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.