【问题标题】:How to draw trade line on Scatter Chart in android?如何在android的散点图上绘制交易线?
【发布时间】:2014-05-13 13:04:08
【问题描述】:

我正在开发需要散点图的应用程序。对于散点图,我使用 Apache aChartEngine 库来绘制散点图,但我还需要在该散点图上绘制交易线。 aChartEngine 不支持交易线功能。所以任何人都有想法如何在 android 的散点图上绘制交易线。

编辑

这是我的代码。

protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

TrendLine t = new PolyTrendLine(2);
    Random rand = new Random();
   // double[] x = new double[10*10];
    double[] x = {4,6.5,8,10,15.5};
    double[] err = new double[x.length];
    double[] y = new double[x.length];
    Log.d(TAG,""+x.length);
    for (int i=0; i<x.length; i++) { x[i] = 1000*rand.nextDouble(); }
    for (int i=0; i<x.length; i++) { err[i] = 100*rand.nextGaussian(); } 
    for (int i=0; i<x.length; i++)
    {
        y[i] = x[i]*x[i]+err[i];
    //  y = -0.0004x2 + 0.3133x - 6.4081
        Log.d(TAG,"y y[i].."+y[i]);

        //Log.e(TAG,"t.predict..."+t.predict(y[i]));
    } // quadratic model

    Log.d(TAG,"y size.."+y.length);

    t.setValues(y,x);
    System.out.println(t.predict(12)); // when x=12, y should be... , eg 143.61380202745192

    Log.e(TAG,""+t.predict(12));    }

如何使用此代码在我的图表上画一条线?

【问题讨论】:

    标签: android charts achartengine scatter-plot


    【解决方案1】:

    你可以使用Apache Commons math

    对于线性、多项式、指数、对数和幂趋势线,OLSMultipleLinearRegression 就是您所需要的。

    this S.O.上一个问题,你可以找到趋势线的代码。

    然后您可以简单地将新系列添加到您的图表中,其值来自趋势线。

    【讨论】:

    • 谢谢。我已经很好地尝试了你的代码,但我只是想知道如果我得到 Y 数组,如何绘制一条趋势线。另一件事是,它只适用于 y= x2 + const 方程还是我可以改变它对我的等式说 y=4x2+3x+6.4。您是否尝试过此代码,如果可以,可以与我分享吗?
    • 一个你有你的趋势线,你只需调用 X[i] = t.predict(Y[i]) 创建第二个系列。要绘制组合图表,请查看此处的 aChartEngine 演示 (code.google.com/p/achartengine/source/browse/trunk/achartengine/…),了解可以更改的公式。
    • 我已经开发了 combinechart 但我无法理解哪种方法是画线?在代码中没有像画布这样的类,没有它的折线代码如何绘制线?我可以在我的日志中看到所有数组值,但在 UI 中看不到。如何在 UI 上将它们显示为趋势线。
    • 你必须像另一个系列一样看待你的趋势线。如果您发布代码,也许我可以提供帮助。
    猜你喜欢
    • 1970-01-01
    • 2022-07-28
    • 2013-10-04
    • 2022-12-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多