android mp柱状点击颜色,使用MP Android Chart Library在折线图中填充不同颜色的特定Y范围?...

我是MP Android Chart的新手,我无法弄清楚如何用不同的颜色填充特定的Y系列.屏幕截图中突出显示为第2点.

在阅读功能文档后,我试图改变第1点突出显示的线条颜色,并用一些颜色点3填充图形下的区域.但是第1点和第3点不起作用,我无法弄清楚第2点是如何完成的.截图和代码5022d522f9f515915301300eaa19cdcd.png

公共类LineChartActivity扩展AppCompatActivity {

private static final String TAG = "Test";

@Override

protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.activity_line_chart);

Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);

setSupportActionBar(toolbar);

Log.i(TAG, "Line Chart Activity Created");

LineChart chart = (LineChart) findViewById(R.id.chart);

LineData data = new LineData(getXAxisValues(), getDataSet());

chart.setData(data);

setXAxis(chart);

chart.getAxisRight().setDrawLabels(false);

//chart.setAutoScaleMinMaxEnabled(true);

chart.setGridBackgroundColor(128);

chart.setBorderColor(255);

chart.setDrawGridBackground(false);

//chart.setBackgroundColor(0);

chart.getLegend().setEnabled(false);

chart.setPinchZoom(true);

chart.setDescription("");

chart.setTouchEnabled(true);

chart.setDoubleTapToZoomEnabled(true);

chart.animateXY(2000, 2000);

chart.invalidate();

}

private ArrayList getDataSet() {

ArrayList dataSets = null;

ArrayList valueSet1 = new ArrayList<>();

Entry v1e1 = new Entry(110.000f, 0);

valueSet1.add(v1e1);

Entry v1e2 = new Entry(40.000f, 4);

valueSet1.add(v1e2);

Entry v1e3 = new Entry(60.000f, 5);

valueSet1.add(v1e3);

Entry v1e4 = new Entry(30.000f, 6);

valueSet1.add(v1e4);

Entry v1e5 = new Entry(90.000f, 7);

valueSet1.add(v1e5);

Entry v1e6 = new Entry(100.000f, 8);

valueSet1.add(v1e6);

LineDataSet lineDataSet1 = new LineDataSet(valueSet1, "Brand 1");

int[] colors = new int[] {R.color.red ,R.color.red, R.color.orange ,R.color.green, R.color.orange, R.color.red };

lineDataSet1.setCircleColors(colors, this);

lineDataSet1.setCircleRadius(8f);

lineDataSet1.setLineWidth(3f);

lineDataSet1.setValueTextSize(20f);

lineDataSet1.enableDashedLine(6f, 18f, 0);

dataSets = new ArrayList<>();

dataSets.add(lineDataSet1);

return dataSets;

}

private ArrayList getXAxisValues() {

ArrayList xAxis = new ArrayList<>();

xAxis.add("JAN");

xAxis.add("FEB");

xAxis.add("MAR");

xAxis.add("APR");

xAxis.add("MAY");

xAxis.add("JUN");

xAxis.add("JUL");

xAxis.add("AUG");

xAxis.add("SEPT");

xAxis.add("OCT");

xAxis.add("NOV");

xAxis.add("DEC");

return xAxis;

}

private void setXAxis(LineChart chart){

XAxis xAxis = chart.getXAxis();

xAxis.setPosition(XAxis.XAxisPosition.BOTTOM);

xAxis.setTextSize(10f);

xAxis.setTextColor(Color.BLUE);

//xAxis.setDrawGridLines(true);

xAxis.setDrawAxisLine(true);

}

}

非常感谢 !

ANKIT

解决方法:

如果您尝试更改连接绘图点的线的颜色,可以尝试这样做:

lineDataSet1.setColor(Color.BLACK) //or any other color you want

要填充图表下的区域,请尝试使用:

lineDataSet1.setFillColor(Color.GREEN);

lineDataSet1.setFillAlpha(10); //setting alpha is optional, use if needed.

就你的观点2而言,我认为使用LimitLines可能是起点,因为它们可以平行于任何轴绘制.填写他们将需要一些调查.如果我找到了什么,我肯定会更新答案.

希望这可以帮助!

标签:android,charts,linechart,mpandroidchart

来源: https://codeday.me/bug/20190611/1220561.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值