I trying use shinobicharts to design like as this chart:
http://www.upsieutoc.com/images/2014/04/19/barseries.png
BarSeries
I used BarSeries, and i having a few problem following:
i can't found function to set data on each DataPoint (20, 25, 30).
i want set other color for each data point like in the image above. (red, green, purple)
right align for label. (France, Malaysia, Spain).
And this code:
ChartFragment chartFragment = (ChartFragment) getFragmentManager().findFragmentById(R.id.chart);
ShinobiChart shinobiChart = chartFragment.getShinobiChart();
NumberAxis xAxis = new NumberAxis();
xAxis.setPosition(Position.REVERSE);
shinobiChart.addXAxis(xAxis);
CategoryAxis yAxis = new CategoryAxis();
shinobiChart.addYAxis(yAxis);
BarSeries series = new BarSeries();
series.setTitle("Country");
DataAdapter<Integer, String> adapter = new SimpleDataAdapter<Integer, String>();
adapter.add(new DataPoint<Integer, String>(20, "Spain"));
adapter.add(new DataPoint<Integer, String>(25, "Malaysia"));
adapter.add(new DataPoint<Integer, String>(30, "France"));
series.setDataAdapter(adapter);
shinobiChart.addSeries(series);
Please help me!
Apparently you can't.
The solution is to have 3 series with one value each, rather than one series with 3 values. E.g.:
ChartFragment chartFragment = (ChartFragment) getFragmentManager().findFragmentById(R.id.chart);
ShinobiChart shinobiChart = chartFragment.getShinobiChart();
NumberAxis xAxis = new NumberAxis();
xAxis.setPosition(Position.REVERSE);
shinobiChart.addXAxis(xAxis);
CategoryAxis yAxis = new CategoryAxis();
shinobiChart.addYAxis(yAxis);
BarSeries series1 = new BarSeries();
series1.setTitle("Country");
BarSeriesStyle bss1 = series1.getStyle();
bss1.setAreaColor(Color.RED);
DataAdapter<Integer, String> adapter = new SimpleDataAdapter<Integer, String>();
adapter.add(new DataPoint<Integer, String>(20, "Spain"));
series1.setDataAdapter(adapter);
shinobiChart.addSeries(series1);
BarSeries series2 = new BarSeries();
series2.setTitle("Country");
BarSeriesStyle bss2 = series2.getStyle();
bss2.setAreaColor(Color.GREEN);
DataAdapter<Integer, String> adapter = new SimpleDataAdapter<Integer, String>();
adapter.add(new DataPoint<Integer, String>(25, "Malaysia"));
series2.setDataAdapter(adapter);
shinobiChart.addSeries(series2);
BarSeries series3 = new BarSeries();
series3.setTitle("Country");
BarSeriesStyle bs3 = series3.getStyle();
bss3.setAreaColor(Color.BLUE);
DataAdapter<Integer, String> adapter = new SimpleDataAdapter<Integer, String>();
adapter.add(new DataPoint<Integer, String>(30, "France"));
series3.setDataAdapter(adapter);
shinobiChart.addSeries(series3);