在图表上的x轴上设置字符串值?

时间:2012-12-19 11:35:49

标签: android graph

我有一个在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,提前谢谢。

2 个答案:

答案 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
      }
   }
};