我在 R 中有这个代码:

RdWh <- colorRampPalette(c("red", "white"))
GrWh <- colorRampPalette(c("green", "white"))
BlWh <- colorRampPalette(c("blue", "white"))
color.gradient.3 <- c(RdWh, GrWh, BlWh)

然后我想得到一个向量
c(RdWh(10), GrWh(10), BlWh(10))

如何实现这一目标?

最佳答案

为了避免编写一堆对 colorRampPalette() 的调用,您可以将颜色向量放入一个列表 color ,然后通过 sapply() 运行该列表,我们还可以在每次运行时同时调用 n = 10 。然后根据需要使用 c() 包装以获得矢量结果。

color <- list(RdWh = c("red", "white"), GrWh = c("green", "white"), BlWh = c("blue", "white"))
c(sapply(color, function(x) colorRampPalette(x)(10)))

关于r - 如何将与参数相同的值分配给 R 中的函数向量?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/50307174/

10-12 17:12