У меня есть специальный модуль форматирования, который я нашел в другом потоке, который помогает устанавливать строки в качестве горизонтальной метки.
GraphViewSeries series = new GraphViewSeries(new GraphView.GraphViewData[] {
new GraphView.GraphViewData(0, 14d),
new GraphView.GraphViewData(1, 7d),
new GraphView.GraphViewData(2, 12d),
new GraphView.GraphViewData(3, 10d),
new GraphView.GraphViewData(4, 14d),
new GraphView.GraphViewData(5, 8d),
new GraphView.GraphViewData(6, 25d),
new GraphView.GraphViewData(7, 10d),
new GraphView.GraphViewData(8, 14d),
new GraphView.GraphViewData(9, 7d),
new GraphView.GraphViewData(10, 5d),
});
GraphView graphView = new BarGraphView(this, "Demo");
graphView.addSeries(series);
horizontalLabels = new String[]{"1", "2", "3", "4", "5", "6",
"7", "8", "9", "10", "11"};
graphView.setViewPort(0, 3);
graphView.setScrollable(true);
graphView.setManualYAxisBounds(30, 0);
graphView.getGraphViewStyle().setNumVerticalLabels(6);
graphView.getGraphViewStyle().setNumHorizontalLabels(5);
//graphView.getGraphViewStyle().setTextSize();
graphView.setCustomLabelFormatter(new CustomLabelFormatter() {
@Override
public String formatLabel(double value, boolean isValueX) {
if (isValueX) {
return horizontalLabels[(int) value];
} else
return null;
}
});
LinearLayout layout = (LinearLayout) findViewById(R.id.graph1);
layout.addView(graphView);
Это весь мой код, который обрабатывает graphView. Я не могу найти какую-либо часть, которая могла бы сделать это странное удвоение значений, но я использую эту библиотеку впервые, и, возможно, есть некоторые настройки, чтобы исправить это.
Это выглядит так, когда я прокручиваю график, он все еще удваивает значения. На экране всегда есть 2 одинаковых значения, независимо от того, где я прокручиваю это.
РЕДАКТИРОВАТЬ: На этих экранах горизонтальные метки должны быть 1, 2, 3, 4, 5 - если это что-то меняет.