【问题标题】:How to color each column differently in plot function?如何在绘图功能中为每一列着色?
【发布时间】:2017-07-15 08:59:12
【问题描述】:

我有一个数据框如下:

       A          B        C        D          E        F        
T1     1          0        4        6          2        5      
T2     1          0        4        6          2        5        
T3     1          0        4        6          2        5        
T4     1          0        4        6          2        5 

我正在做圣职,我只想让每一列都有不同的颜色并有相应的图例。

points(dat.pcoa$points[ ,1], dat.pcoa$points[ ,2],
   pch = 19, cex = 3, bg = "gray", col = "gray")

我写了这段代码,但是我不知道如何给它分配一个托盘,因为我有大量的数据点,所以我不能分配一个向量(c <- "red","blue"),因为这将是一个乏味的练习

【问题讨论】:

  • ggplot2 的好处是它有不同的层和更多的例子可以在网上找到 w.r.t。到那个和使用托盘。但是,我需要在基本 R 中进行绘图(很长的原因),并且由于我拥有的列数太多,我需要一个托盘。

标签: r plot colors color-palette


【解决方案1】:

RColorBrewer 包有一些现成的调色板,但如果你的目标只是基于 R,你可以尝试自己构建一个。有几个基本函数可以产生颜色字符串 - 我建议使用 hsv(),因为它更容易产生相同饱和度的不同颜色,而 rgb() 则需要更改所有三个参数。

例如,生成 10 种颜色,色调为 0.1 到 1,饱和度和亮度保持在 0.7:

barplot(1:10, col=sapply(1:10/10, hsv, 0.7, 0.7))


编辑:rainbow 似乎是一个内置的包装器来做到这一点 - 调用 hsv 来产生所需数量的颜色。谢谢@d.b!

【讨论】:

  • 也许也提到rainbow
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-12-06
  • 2012-05-29
  • 1970-01-01
  • 2011-09-28
  • 1970-01-01
相关资源
最近更新 更多