我使用 achartengine 实现了折线图。但我想更改折线图背景颜色。有人建议使用以下代码更改背景颜色。
mRenderer.setApplyBackgroundColor(true); mRenderer.setBackgroundColor(Color.RED);
但它不会改变整个背景。我想改变整个背景可以吗?如果是,那么怎么做请任何人帮助我。下图是前面代码的输出。我想改变整个bgcolor(意味着剩余的黑色部分也变为白色)
Alinegraph.java
公共类 ALinegraph 扩展 Activity {
/** 在第一次创建活动时调用。*/
@Override
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
requestWindowFeature(Window.FEATURE_NO_TITLE);
getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,WindowManager.LayoutParams.FLAG_FULLSCREEN);
setContentView(R.layout.main);
Button Linegraph = (Button) findViewById(R.id.Linegraph);
Linegraph.setOnClickListener(new OnClickListener(){
@Override
public void onClick(View v) {
Linegraphpage ACTC = new Linegraphpage();
Intent intent = ACTC.execute(ALinegraph.this);
startActivity(intent);
}});
}
}
Linegraphpage.java
公共类 Linegraphpage 扩展 AbstractDemoChart
{
/**
* Returns the chart name.
*
* @return the chart name
*/
public String getName() {
return "Average temperature";
}
/**
* Returns the chart description.
*
* @return the chart description
*/
public String getDesc() {
return "The average temperature in 4 Greek islands (line chart)";
}
/**
* Executes the chart demo.
*
* @param context the context
* @return the built intent
*/
public Intent execute(Context context) {
String[] titles = new String[] { "Crete","Corfu"};
List<double[]> x = new ArrayList<double[]>();
for (int i = 0; i < titles.length; i++) {
x.add(new double[] { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 });
}
List<double[]> values = new ArrayList<double[]>();
values.add(new double[] { 12.3, 12.5, 13.8, 16.8, 20.4, 24.4, 26.4, 26.1, 23.6, 20.3 });
values.add(new double[] { 100, 100, 100, 100, 100, 100, 100, 100, 100, 100 });
int[] colors = new int[] { Color.CYAN,Color.GREEN};
PointStyle[] styles = new PointStyle[] { PointStyle.CIRCLE,PointStyle.POINT};
XYMultipleSeriesRenderer renderer = buildRenderer(colors, styles);
int length = renderer.getSeriesRendererCount();
for (int i = 0; i < length; i++) {
((XYSeriesRenderer) renderer.getSeriesRendererAt(i)).setFillPoints(true);
}
setChartSettings(renderer, "", "", "price", 0, 12, 0, 190,
Color.GREEN, Color.GREEN);
renderer.setXLabels(10);
renderer.setYLabels(7);
renderer.setShowGrid(false);
renderer.setXLabelsAlign(Align.RIGHT);
renderer.setYLabelsAlign(Align.RIGHT);
renderer.setApplyBackgroundColor(true);
renderer.setBackgroundColor(Color.WHITE);
renderer.setZoomButtonsVisible(true);
renderer.setPanLimits(new double[] { -10, 20, -10, 40 });
renderer.setZoomLimits(new double[] { -10, 20, -10, 40 });
Intent intent = ChartFactory.getLineChartIntent(context, buildDataset(titles, x, values),
renderer, "");
return intent;
}
}
更新的图像