非常基本的AChartEngine XY

时间:2011-09-22 14:16:27

标签: achartengine

我已经花了好几个小时才能得到一些简单的东西,比如根据我手动提供的2个点显示折线图,我得到的只是一个崩溃。我试图了解一切是如何根据演示代码工作的,但它太复杂了。我甚至不关心用onResume()等编写好的代码,我只想在第一次打开活动时显示一些内容。一旦我知道如何做到这一点,我将能够适应和学习我需要的东西。这是我提出的代码:

 public class StatsActivity extends Activity {
 private XYMultipleSeriesDataset StatsDataset = new XYMultipleSeriesDataset();
 private XYMultipleSeriesRenderer StatsRenderer = new XYMultipleSeriesRenderer();
 private XYSeries StatsCurrentSeries;
 private GraphicalView StatsChartView;

 protected void onCreate(Bundle savedInstanceState) {
     setContentView(R.layout.stats);
     LinearLayout layout = (LinearLayout) findViewById(R.id.Statschart);
     StatsRenderer.setAxesColor(Color.YELLOW);
     String seriesTitle = "Rank";
     XYSeries series = new XYSeries(seriesTitle);
         series.add(5, 7); //1st series I want to add
     StatsDataset.addSeries(series);
         series.add(9, 1); //the 2nd one
     StatsDataset.addSeries(series);
     StatsCurrentSeries = series;
     System.out.println(series);
     XYSeriesRenderer renderer = new XYSeriesRenderer();
     renderer.setColor(Color.RED);
     StatsRenderer.addSeriesRenderer(renderer);
     StatsChartView = ChartFactory.getLineChartView(this, StatsDataset,StatsRenderer); 
     layout.addView(StatsChartView);    
 }
}

我一直在阅读文档以确定每个函数的作用但最终我仍然无法显示任何内容。

谢谢!

1 个答案:

答案 0 :(得分:1)

我遇到的最重要的事情是你需要为每个XYSeries渲染一个渲染器。这里有两个系列,但只有一个渲染器 - 我只是在输入数据时创建/添加渲染器。此外,Android主要是按引用传递,因此您已经两次传递相同的数据集(即您对数据的第二次更新将在“MultipleSeriesDataset”中进行镜像)。