R:调色板(rainbow())没有为第一次尝试更新

时间:2017-06-15 01:31:12

标签: r colors palette

我似乎无法在第一次尝试时使用函数调色板(rainbow())更新颜色,但在第二次尝试时成功。有没有更聪明的方法来更新颜色,而不是我两次调用函数的方式?

# call the function 
colRainbow = palette(rainbow(3))
colRainbow
# [1] "red"   "green" "blue" 
# success!

# call the function, overwrite the object colRainbow 
colRainbow = palette(rainbow(5))
colRainbow
# [1] "red"   "green" "blue" 
# Fail!

# Re-overwrite the object
colRainbow = palette(rainbow(5))
colRainbow
# [1] "red"     "#CCFF00" "#00FF66" "#0066FF" "#CC00FF"
# success!

1 个答案:

答案 0 :(得分:1)

palette的文档说它会返回:

  

一个字符向量,提供 生效的调色板

所以看

colRainbow = palette(rainbow(3))
colRainbow = palette(rainbow(5))
colRainbow
# [1] "red"   "green" "blue" 

是你应该期待的,你看到前面的调色板。在R中设置选项的函数通常以这种方式工作,因此您可以执行old_options = set_options(new_value),然后存储旧值以便稍后恢复。

要在每次更改后查看当前调色板,只需在没有参数的情况下调用palette()