MPandroidchart一些点';s颜色不';不变
我正在制作散点图,如果值超过特定值 圆点的颜色改变了 我写了这样的代码MPandroidchart一些点';s颜色不';不变,android,mpandroidchart,Android,Mpandroidchart,我正在制作散点图,如果值超过特定值 圆点的颜色改变了 我写了这样的代码 for (int i = 0; i < 30; i++) { float y = (float) (Math.random()*0.2+0.1); value1.add(new Entry(i, y)); if(y>=0.2f) { colors.add(getBaseContext().getResources().ge
for (int i = 0; i < 30; i++)
{
float y = (float) (Math.random()*0.2+0.1);
value1.add(new Entry(i, y));
if(y>=0.2f)
{
colors.add(getBaseContext().getResources().getColor(R.color.color_red));
}
else
colors.add(getBaseContext().getResources().getColor(R.color.color_skyblue));
}
}
for(int i=0;i<30;i++)
{
float y=(float)(Math.random()*0.2+0.1);
价值1.增加(新分录(i,y));
如果(y>=0.2f)
{
添加(getBaseContext().getResources().getColor(R.color.color_red));
}
其他的
添加(getBaseContext().getResources().getColor(R.color.color_skyblue));
}
}
结果如下
正如你所看到的,有一条线
上面的颜色应该是红色,下面的颜色应该是蓝色
你可以看到图表下方的正方形
比如说,
正方形的数量与圆圈的数量相同,9
但只有一个圆圈是蓝色的
我认为我的代码没有问题
但显然存在一个问题
请让我来解决这个问题
谢谢。您可以为参考上方和下方的点创建两组,并为这两组点指定颜色
ArrayList overlevel=new ArrayList();
ArrayList belowLevel=新的ArrayList();
对于(int i=0;i<30;i++){
float y=(float)(Math.random()*0.2+0.1);
如果(y>=0.2f){
增加(新条目(i,y));
}否则{
在下面添加(新条目(i,y));
}
}
ScatterDataSet set1=新的ScatterDataSet(高于级别,“高于”);
set1.setColor(ColorTemplate.colorial_COLORS[0]);
ScatterDataSet set2=新的ScatterDataSet(在下面的“下方”);
set2.setColor(ColorTemplate.colorial_COLORS[1]);
ArrayList数据集=新的ArrayList();
数据集。添加(set1);//添加数据集
数据集.add(set2);
//使用数据集创建数据对象
散射数据数据=新的散射数据(数据集);
图表.设置数据(数据);
Wow!多好的主意啊!谢谢分享你的好主意!它正在工作!再次感谢!