Я хочу создать график столбцов в приложении для Android.
Мне нужна диаграмма на scrollView.Рисовать график в android с помощью Graphview?
Я уже пробовал GraphView и AndroidPlot.
Я хочу создать график столбцов в приложении для Android.
Мне нужна диаграмма на scrollView.Рисовать график в android с помощью Graphview?
Я уже пробовал GraphView и AndroidPlot.
UPDATE
Новое обновление к GraphView не поддерживает этот подход
Использование GraphView:
я сделал ниже функция, которая принимает три массива в качестве параметра , Сначала берут метки оси X, затем берут метки оси Y и последние принимают значения, которые должны быть построены.
Код
private void renderGraph(String[] xAxis, String[] yAxis, float[] data) {
GraphViewData[] data = new GraphViewData[xAxis.length];//this class is defined below
double v = 1, w = 1;
int num = xAxis.length;
for (int j = 0; j < num; j++) {
v = data[j];
data[j] = new GraphViewData(j, v);
}
GraphViewSeries example1 = new GraphViewSeries(data);
GraphView graphView = new BarGraphView(this, "GRAPH TITLE");
graphView.setVerticalLabels(yAxis);
graphView.setHorizontalLabels(xAxis);
graphView.addSeries(example1);
example1.getStyle().color = Color.BLUE;
graphView.setScalable(true);
graphView.getGraphViewStyle().setTextSize(18);
graphView.setScrollable(false);
graphView.getGraphViewStyle().setGridColor(Color.DKGRAY);
graphView.getGraphViewStyle().setGridStyle(GridStyle.VERTICAL);
graphView.getGraphViewStyle().setNumHorizontalLabels(5);
LinearLayout layout = (LinearLayout) findViewById(R.id.graphz);//graphz is defined in layout
layout.addView(graphView);
}
GraphViewData класс:
Этот класс немного вариант от указанной в документации.
public class GraphViewData implements GraphViewDataInterface {
private double x, y;
public GraphViewData(double x, double y) {
super();
this.x = x;
this.y = y;
}
@Override
public double getX() {
// TODO Auto-generated method stub
return this.x;
}
@Override
public double getY() {
// TODO Auto-generated method stub
return this.y;
}
}
P.S.
Вызов этот метод как:
String[] xAxis = {"RED","WHITE","BLUE","GREEN"};
String[] yAxis = {"GOOD", "AVEGRAGE", "BAD"};
String[] data = {"1", "2", "1","2"};
renderGraph(xAxis, yAxis, data);
GraphView является простой вариант, чтобы начать с – Nabin
@Nabin Я пробовал это, но я canoot понимаю. Мне нужно руководство для этого. –
вам нужно scrollview горизонтально внутри графика? @Ido Naveh –