首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >achartengine多系列画线图

achartengine多系列画线图
EN

Stack Overflow用户
提问于 2013-12-24 10:20:55
回答 1查看 1.7K关注 0票数 2

我正试图开发一个应用程序与阿查特引擎,绘制一个多系列的图表。这是我的代码:

代码语言:javascript
复制
import java.util.ArrayList;

import org.achartengine.ChartFactory;
import org.achartengine.GraphicalView;
import org.achartengine.chart.PointStyle;
import org.achartengine.model.XYMultipleSeriesDataset;
import org.achartengine.model.XYSeries;
import org.achartengine.renderer.XYMultipleSeriesRenderer;
import org.achartengine.renderer.XYSeriesRenderer;

import android.content.Context;
import android.graphics.Color;

public class Graph {
    private Context context;
    XYMultipleSeriesDataset dataset;
    XYMultipleSeriesRenderer renderer;
    public static boolean ClickEnabled = true;
    public Graph(Context context) {
        this.context = context;
    }

    public void initData(ArrayList<Double> x,ArrayList<Double> y,ArrayList<Double> z){      
        XYSeries seriesX = new XYSeries("X");
        for(int i =0 ; i< x.size();i++){
            seriesX.add(x.get(i), i);
        }
        XYSeries seriesY = new XYSeries("Y");
        for(int i =0 ; i< y.size();i++){
            seriesY.add(y.get(i), i);
        }
        XYSeries seriesZ = new XYSeries("Z");
        for(int i =0 ; i< z.size();i++){
            seriesZ.add(z.get(i), i);
        }
        dataset = new XYMultipleSeriesDataset();
        dataset.addSeries(seriesX);
        dataset.addSeries(seriesY);
        dataset.addSeries(seriesZ);
        renderer = new XYMultipleSeriesRenderer();
    }
    public void setProperties(){
        renderer.setPanEnabled(true, false);
        renderer.setClickEnabled(ClickEnabled);
        renderer.setBackgroundColor(Color.WHITE);
        renderer.setApplyBackgroundColor(true);
        renderer.setChartTitle("AccelerometerData");
        renderer.setAxesColor(Color.BLACK);
        XYSeriesRenderer renderer1 = new XYSeriesRenderer();
        renderer1.setColor(Color.RED);
        renderer1.setPointStyle(PointStyle.DIAMOND);
        renderer.addSeriesRenderer(renderer1);
        XYSeriesRenderer renderer2 = new XYSeriesRenderer();
        renderer2.setColor(Color.GREEN);
        renderer2.setPointStyle(PointStyle.DIAMOND);
        renderer.addSeriesRenderer(renderer2);
        XYSeriesRenderer renderer3 = new XYSeriesRenderer();
        renderer3.setColor(Color.BLUE);
        renderer3.setPointStyle(PointStyle.DIAMOND);
        renderer.addSeriesRenderer(renderer3);
    }


    public GraphicalView getGraph(){    
        return ChartFactory.getLineChartView(context, dataset, renderer);
    }
}

我得到了这样的图表:

我想要所有三个系列平行,并希望从图表中删除黑色背景;

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-12-24 11:09:11

为了改变黑色,你可以这样做

代码语言:javascript
复制
XYMultipleSeriesRenderer renderer = new XYMultipleSeriesRenderer();
    renderer.setMargins(new int[] { top, left, bottom, right });
    renderer.setMarginsColor(Color.RED);

对于你的第二个问题,请通过屏幕截图或任何参考图片来更具体。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/20759127

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档