MPAndroidChart 教程:设置颜色 Setting Colors

简介: 从v1.4.0版本开始,不再需要(不建议使用)在先前版本中负责设置颜色的ColorTemplate对象。然而,它仍然保留所有预定义的颜色数组(例如,ColorTemplate.VORDIPLOM_COLORS并提供方便的方法,用于将颜色从资源(资源整数)转换为“真实”颜色。

v1.4.0版本开始,不再需要(不建议使用)在先前版本中负责设置颜色的ColorTemplate对象。然而,它仍然保留所有预定义的颜色数组(例如,ColorTemplate.VORDIPLOM_COLORS并提供方便的方法,用于将颜色从资源(资源整数)转换为“真实”颜色。

现在可以通过DataSet对象直接指定颜色而不是通过ColorTemplate,这允许为每个DataSet单独设置样式。

在这个简短的例子中,我们有两个不同的LineDataSet对象代表两家公司的季度收入(之前在设置数据教程中提到过),我们现在想要设置不同的颜色。

我们想要什么:

  • “公司1”的值应由“红色”的四种不同变体表示
  • “公司2”的值应由“绿色”的四种不同变体表示

这就是代码的样子:

LineDataSet setComp1 = new LineDataSet(valsComp1, "Company 1");
  // sets colors for the dataset, resolution of the resource name to a "real" color is done internally
  setComp1.setColors(new int[] { R.color.red1, R.color.red2, R.color.red3, R.color.red4 }, Context);
  
  LineDataSet setComp2 = new LineDataSet(valsComp2, "Company 2");
  setComp2.setColors(new int[] { R.color.green1, R.color.green2, R.color.green3, R.color.green4 }, Context);

除此之外,还有许多其他方法可以为一个DataSet设置颜色,下面是一个完整的文档:

  • setColors(int [] colors, Context c):设置此DataSet应使用的颜色。只要DataSet表示的条目数高于colors数组的大小,就会重复使用颜色。您可以使用“new int [] {R.color.red,R.color.green,...}”为此方法提供颜色。在内部,使用getResources().getColor(...)解析颜色。
  • setColors(int [] colors):设置此DataSet应使用的颜色。只要DataSet表示的条目数高于colors数组的大小,就会重复使用颜色。在将它们添加到DataSet之前,请确保已准备好颜色(通过调用getResources().getColor(...))。
  • setColors(ArrayList<Integer> colors):设置此DataSet应使用的颜色。只要DataSet表示的条目数高于colors数组的大小,就会重复使用颜色。在将它们添加到DataSet之前,请确保已准备好颜色(通过调用getResources().getColor(...))。
  • setColor(int color):设置应用于此DataSet的唯一颜色。在内部,这将重新创建颜色数组并添加指定的颜色。

ColorTemplate 示例:

LineDataSet set = new LineDataSet(...);
set.setColors(ColorTemplate.VORDIPLOM_COLORS);

如果没有为一个 DataSet设置颜色,则使用默认颜色。

 

相关文章
|
18天前
|
前端开发
字体的颜色(color属性)
【10月更文挑战第7天】字体的颜色(color属性)
39 1
|
3月前
Flutter更改主题颜色报错:type ‘Color‘ is not a subtype of type ‘MaterialColor‘
Flutter更改主题颜色报错:type ‘Color‘ is not a subtype of type ‘MaterialColor‘
36 4
|
5月前
|
移动开发 前端开发 JavaScript
HTML5 Canvas自定义圆角矩形与虚线(Rounded Rectangle and Dash Line)
HTML5 Canvas自定义圆角矩形与虚线(Rounded Rectangle and Dash Line)
56 3
|
6月前
|
Android开发
ImageView设置tint ,修改图标颜色
ImageView设置tint ,修改图标颜色
82 0
|
Web App开发 前端开发 开发者
1 分钟认识新属性 accent-color —— 修改 input 默认控件颜色
1 分钟认识新属性 accent-color —— 修改 input 默认控件颜色
|
IDE Java 开发工具
Eclipse颜色主题(Color Theme)与缩进线(Indent Guide)插件安装教程
Eclipse颜色主题(Color Theme)与缩进线(Indent Guide)插件安装教程
394 0
Figma|Generate color palette
Figma|Generate color palette
112 0
|
前端开发 JavaScript
两个dark mode的动画
两个dark mode的动画
108 0
两个dark mode的动画
|
JavaScript 前端开发
一个dark mode的动画
一个dark mode的动画
127 0
一个dark mode的动画
关于 QWidget无法使用stylesheet设置自身backgound-color(背景色)和border-image(背景图片) 的解决方法
关于 QWidget无法使用stylesheet设置自身backgound-color(背景色)和border-image(背景图片) 的解决方法
关于 QWidget无法使用stylesheet设置自身backgound-color(背景色)和border-image(背景图片) 的解决方法