我能用mpAndroidChart绘制渐变折线图吗?

4

在这里输入图片描述

我能画出与图片相似的折线图吗?如果可以,我应该怎么做才能改变线条颜色?谢谢!

我所绘制的图表如图二所示,线条颜色相同且没有昨日收入。我应该如何将线条改为渐变颜色,并仅显示最后的标记视图?

我所绘制的图片。


你能展示一下你尝试过的内容吗? - gre_gor
你解决了你的问题吗?我收到了相同的请求。 - Freddy
1个回答

9
我找到了解决方法!请查看Lance Gleason的教程。它很简单。以下是其中一些代码:
@Override
public void onStart() {
    super.onStart();
    getView().post(new Runnable() {
        @Override
        public void run() {
            setupGradient(chartDaySpeed);
        }
    });
}

private void setupGradient(LineChart mChart) {
    Paint paint = mChart.getRenderer().getPaintRender();
    int height = mChart.getHeight();

    LinearGradient linGrad = new LinearGradient(0, 0, 0, height,
            getResources().getColor(android.R.color.holo_green_light),
            getResources().getColor(android.R.color.holo_red_light),
            Shader.TileMode.REPEAT);
    paint.setShader(linGrad);
}

以下是结果:

线形图渐变结果


我可以用渐变填充图形下面的区域,而不是使用“line”吗? - Saad Saadi
Saad Saadi,是的,你可以。Drawable drawable = ContextCompat.getDrawable(this.getContext(), R.drawable.fade_chart_all); set1.setFillDrawable(drawable); - Dantalian
确保getHeight()不会返回0,只需在视图加载后调用setupGradient()即可。您可以通过添加OnGlobalLayoutListener来实现这一点。 - Anthony Cannon

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接