现在我正在Android项目中使用aChartEngine库。它到目前为止工作得很好。我无法弄清楚的一件事是如何最初显示它。显示我的数据的唯一方法是在图表上的某处单击并平移或按下缩放按钮。因此,最初显示缩放按钮,但不显示图形本身。我搜索了渲染器的方法,但没有任何效果。创建渲染器后我调用mSeriesRenderer.setShowGrid(true);
并且不显示。我也试过repaint()
,甚至没有这样做。我是在错误的时间打电话吗?
public void onResume()
{
if(mMeterObs.getGraph() == null)
{
LinearLayout layout = (LinearLayout)findViewById(R.id.chart);
mMeterObs.setGraph(ChartFactory.getLineChartView(this, mMeterObs.getMultipleSeries(), mMeterObs.getSeriesRenderer()));
layout.addView(mMeterObs.getGraph(), LayoutParams.MATCH_PARENT, LayoutParams.MATCH_PARENT);
mMeterObs.repaint();
}
else
mMeterObs.repaint();
}
mMeterObs.getMultipleSeries()
和mMeterObs.getSeriesRenderer()
一开始都是空的,但它仍然可以显示网格和轴,对吗?
在mMeterObs
的构造函数中,我称之为:
mSeriesRenderer.setXLabels(12);
mSeriesRenderer.setYLabels(10);
mSeriesRenderer.setShowGrid(true);
mSeriesRenderer.setXLabelsAlign(Align.RIGHT);
mSeriesRenderer.setYLabelsAlign(Align.RIGHT);
mSeriesRenderer.setZoomButtonsVisible(true);
mSeriesRenderer.setRange(new double[] { 0.0, 10.0, -1.0, 1.0 });
//mSeriesRenderer.setPanEnabled(true);
mSeriesRenderer.setZoomLimits(new double[] { -10, 20, -10, 40 });
mSeriesRenderer.setGridColor(Color.LTGRAY);
mSeriesRenderer.setShowGrid(true);
mSeriesRenderer.setShowAxes(true);
mSeriesRenderer.setPointSize(.5f);
答案 0 :(得分:1)
我建议您添加一些数据系列。 网格仅沿标签显示,但您没有标签。