如何在android中设置achartengine折线图的背景图片?

时间:2012-01-05 06:31:43

标签: android achartengine

我正在使用achartengine来显示我的应用程序中的折线图。我需要为图表添加bg图像,但是当我在xml中设置bg图像时,它不起作用。有人试过吗?提前谢谢。

7 个答案:

答案 0 :(得分:14)

首先,您需要在活动中添加图表,并在活动布局中将首选图像设置为背景。 (看看AChartEngineneDemo中的XYChartBuilder,看看如何做到这一点)

其次,为图表和图表边距设置透明背景:

mRenderer.setApplyBackgroundColor(true);
mRenderer.setBackgroundColor(Color.TRANSPARENT);
mRenderer.setMarginsColor(getResources().getColor(R.color.transparent_background));

最后,创建自己的透明背景,因为Color.TRANSPARENT不适用于图表边距:

<color name="transparent_background">#00FF0000</color>

希望这有帮助:)

答案 1 :(得分:7)

您只需用以下代码替换该行代码:

mRenderer.setMarginsColor(Color.argb(0x00, 0x01, 0x01, 0x01));

答案 2 :(得分:4)

可以设置折线图的背景。这是一个适合我的技巧。

// RelativeLayout layout_ChartView = (RelativeLayout) findViewById(R.id.chart_View);  
private GraphicalView mChartView;  
if(mChartView==null){
mChartView.setBackgroundDrawable(getResources().getDrawable(R.drawable.bg));
layout_ChartView.addView(mChartView, new LayoutParams(LayoutParams.FILL_PARENT,300));  
mChartView = ChartFactory.getCubeLineChartView(this,mDataset,mRenderer, 0.2f);  
}
else{    
  mChartView.repaint();
}

答案 3 :(得分:3)

你设置了margincolor吗? 喜欢这个?

mRenderer.setApplyBackgroundColor(true);
mRenderer.setBackgroundColor(Color.RED);
mRenderer.setMarginsColor(Color.RED);

这将为您的图表背景提供红色的全部视图

答案 4 :(得分:1)

mRenderer.setBackgroundColor(Color.Transparent);

显示图表的布局背景设置背景图像。 完成。

答案 5 :(得分:1)

删除:

mRenderer.setMargins(new int[]{0,0,0,0});

它将删除保证金:)简单

用于设置颜色:

mRenderer.setApplyBackgroundColor(true);
mRenderer.setBackgroundColor(Color.TRANSPARENT);

答案 6 :(得分:1)

如果要设置透明背景颜色,可以尝试:

renderer.setMarginsColor(Color.argb(0x00, 0xff, 0x00, 0x00));

这对我有用!