Search code examples
c#monoxamarin.androidachartengine

aChartEngine shows two charts instead one


please look at the images, the first is the adb emulator and the second is a Samsung Galaxy Tab.

Image1 Image 1

Image2 Image 2

I don't know why in the Tab aChartEngine shows two charts.

This is the code:

`private void MostrarCurvas(Estructuras.DatosCurva curva_uno, Estructuras.DatosCurva curva_dos) { XYSeries uno = new XYSeries("Adquisicion");
XYSeries dos = new XYSeries("Interpolacion");

for (int i = 0; i < curva_uno.b.Length; i++)
{
    uno.Add(curva_uno.a[i], curva_uno.b[i]);
}

for (int i = 0; i < curva_dos.b.Length; i++)
{
    dos.Add(curva_dos.a[i], curva_dos.b[i]);
}

XYMultipleSeriesDataset dataset = new XYMultipleSeriesDataset();
dataset.AddSeries(uno);
dataset.AddSeries(dos);

XYSeriesRenderer unoRender = new XYSeriesRenderer();
unoRender.Color = Color.Blue;
unoRender.PointStyle = PointStyle.Point;
unoRender.LineWidth = 1;

XYSeriesRenderer dosRender = new XYSeriesRenderer();
dosRender.Color = Color.Green;
dosRender.PointStyle = PointStyle.Point;
dosRender.LineWidth = 1;

XYMultipleSeriesRenderer multiRenderer = new XYMultipleSeriesRenderer();
multiRenderer.XTitle = "(V)";
multiRenderer.YTitle = "(I)";

multiRenderer.AddSeriesRenderer(unoRender);
multiRenderer.AddSeriesRenderer(dosRender);

LinearLayout layout = FindViewById<LinearLayout>(Resource.Id.graph);
GraphicalView ChartView = ChartFactory.GetLineChartView(this, dataset, multiRenderer);

layout.AddView(ChartView); }`

Solution

  • The issue you have can be fixed by using multiRenderer.setInScroll(true);