我有一个在x轴和y轴上都有浮点值的lineGraph?我的问题是如何在x轴上设置字符串值,如日期或月份名称。我使用的是GraphView-3.0.jar库。我的代码是
values_list.add(1.0);
values_list.add(5.0);
values_list.add(9.0);
values_list.add(12.0);
values_list.add(17.0);
values_list.add(1.0);
values_list.add(13.0);
values_list.add(23.0);
graphData = new GraphViewData[(values_list.size())];
double price_copy = 0;
for (int i = 0; i < values_list.size(); i++) {
price_copy = values_list.get(i);
graphData[i] = new GraphViewData(i, price_copy);
}
GraphView graphView;
graphView = new LineGraphView(this // context
, "" );// graphView.addSeries(exampleSeries);// data
graphView.addSeries(new GraphViewSeries("values",
new GraphViewStyle(Color.rgb(00, 00, 128), 3),
graphData));
graphView.setShowLegend(true);
// set view port, start=2, size=40
graphView.setViewPort(0, 10);
graphView.setScalable(true);
graphView.setScrollable(true);
LinearLayout layout = (LinearLayout) findViewById(R.id.LNL_CHART);
layout.addView(graphView);
我也不知道AchartEngine,提前谢谢。
答案 0 :(得分:1)
使用achartengine库。你可以在谷歌上搜索。它帮助了我。谢谢
答案 1 :(得分:0)
只需使用标签格式化程序即可。您可以将x标签作为字符串存储在数组中。
例如:
final String[] xLabels = new String[] {
"foo", "bar", "third", "bla", "more"
};
GraphView graphView = new LineGraphView(this, "example") {
@Override
protected String formatLabel(double value, boolean isValueX) {
if (isValueX) {
return xLabels[(int) value];
} else {
// return y label as number
return super.formatLabel(value, isValueX); // let the y-value be normal-formatted
}
}
};