如何为饼图元素设置自定义颜色
How to set custom color for Piechart element
我在我的 android 项目中使用 MPChart 库。
我有 Json,其中包含用于饼图生成的标签、值和颜色。
我想将 json 中的相同颜色设置为饼图元素。
我按照 MPChart 文档,但没有找到饼图颜色设置的任何解决方案。
您没有在文档中找到解决方案?
Have a look here.
还有许多其他方法可以为 DataSet
:
设置颜色
setColors(int [] colors, Context c)
:设置应该用于此数据集的颜色。一旦 DataSet 表示的条目数大于颜色数组的大小时,颜色就会被重用。您可以使用 "new int[] { R.color.red, R.color.green, ... }" 为该方法提供颜色。在内部,使用 getResources().getColor(...). 解析颜色
setColors(int [] colors)
:设置应该用于此数据集的颜色。一旦 DataSet 表示的条目数大于颜色数组的大小时,颜色就会被重用。确保在将颜色添加到数据集之前已经准备好颜色(通过调用 getResources().getColor(...))。
setColors(ArrayList<Integer> colors)
:设置应该用于此数据集的颜色。一旦 DataSet 表示的条目数大于颜色数组的大小时,颜色就会被重用。确保在将颜色添加到数据集之前已经准备好颜色(通过调用 getResources().getColor(...))。
setColor(int color)
:设置应该用于此数据集的唯一颜色。在内部,这会重新创建颜色数组并添加指定的颜色。
添加 Philipp Jahoda 回答的内容...
您还可以创建一个包含自定义颜色的数组,您可以添加任意数量的颜色。
例如:
int [] color={ Color.rgb(100,221,23), Color.rgb(128,0,128), Color.rgb(255,136,0),
Color.rgb(255,0,0), Color.rgb(255,127,80), Color.rgb(47,95,255)
};
要获取 rgb 代码,您可以先获取所需颜色的十六进制代码,然后使用 google.
上的在线转换器将其转换为 rgb 代码
现在您可以使用此颜色数组为饼图元素着色
图表是这样的:
PieDataSet dataSet= new PieDataSet(Yvalues,"Activities");
dataSet.setColors(color);
此方法将帮助您设置自己的颜色,您可以为饼图的任意多个元素赋予颜色。
但是如果你使用所有这些方法:
setColors(int [] colors, Context c)
setColors(int [] colors)
setColors(ArrayList<Integer> colors)
setColor(int color)
他们将通过允许饼图仅使用五个元素和少数预定义颜色来进行限制。
谢谢。
我在我的 android 项目中使用 MPChart 库。 我有 Json,其中包含用于饼图生成的标签、值和颜色。 我想将 json 中的相同颜色设置为饼图元素。 我按照 MPChart 文档,但没有找到饼图颜色设置的任何解决方案。
您没有在文档中找到解决方案? Have a look here.
还有许多其他方法可以为 DataSet
:
setColors(int [] colors, Context c)
:设置应该用于此数据集的颜色。一旦 DataSet 表示的条目数大于颜色数组的大小时,颜色就会被重用。您可以使用 "new int[] { R.color.red, R.color.green, ... }" 为该方法提供颜色。在内部,使用 getResources().getColor(...). 解析颜色
setColors(int [] colors)
:设置应该用于此数据集的颜色。一旦 DataSet 表示的条目数大于颜色数组的大小时,颜色就会被重用。确保在将颜色添加到数据集之前已经准备好颜色(通过调用 getResources().getColor(...))。setColors(ArrayList<Integer> colors)
:设置应该用于此数据集的颜色。一旦 DataSet 表示的条目数大于颜色数组的大小时,颜色就会被重用。确保在将颜色添加到数据集之前已经准备好颜色(通过调用 getResources().getColor(...))。setColor(int color)
:设置应该用于此数据集的唯一颜色。在内部,这会重新创建颜色数组并添加指定的颜色。
添加 Philipp Jahoda 回答的内容...
您还可以创建一个包含自定义颜色的数组,您可以添加任意数量的颜色。
例如:
int [] color={ Color.rgb(100,221,23), Color.rgb(128,0,128), Color.rgb(255,136,0),
Color.rgb(255,0,0), Color.rgb(255,127,80), Color.rgb(47,95,255)
};
要获取 rgb 代码,您可以先获取所需颜色的十六进制代码,然后使用 google.
上的在线转换器将其转换为 rgb 代码现在您可以使用此颜色数组为饼图元素着色 图表是这样的:
PieDataSet dataSet= new PieDataSet(Yvalues,"Activities");
dataSet.setColors(color);
此方法将帮助您设置自己的颜色,您可以为饼图的任意多个元素赋予颜色。
但是如果你使用所有这些方法:
setColors(int [] colors, Context c)
setColors(int [] colors)
setColors(ArrayList<Integer> colors)
setColor(int color)
他们将通过允许饼图仅使用五个元素和少数预定义颜色来进行限制。
谢谢。