3

我有一个在 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,在此先感谢。

4

2 回答 2

1

使用 chart 引擎库。你可以在谷歌上搜索。它帮助了我。谢谢

于 2012-12-19T12:01:37.520 回答
0

只需使用标签格式化程序。您可以将 x-labels 作为字符串存储在数组中。

例如:

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
      }
   }
};
于 2012-12-19T13:44:28.840 回答