【问题标题】:Specifying and plotting PCA site symbols according to zone根据区域指定和绘制 PCA 站点符号
【发布时间】:2016-06-16 14:29:59
【问题描述】:

我在下面的示例中创建了一个 PCA,我知道要让绘图根据另一个变量来改变符号(例如,我刚刚使用了一组从 1 到 5 的区域)。

我想知道如何为每个区域指定绘图符号,因为我不喜欢默认值。

这是我的例子:

## load vegan

require("vegan")

## load the Dune data
data(dune)

## run pca
dune_pca <- rda(dune)

## create zones for e.g. 
zone <- c(1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5)

## plot blank PCA and add sites with 
## symbol varying accoring to zone
plot(dune_pca, type = "n", scaling = 3)
points(dune_pca, display = "sites", scaling = 3, pch = zone)

【问题讨论】:

  • help("points") 为您提供符号列表及其对应的数字。只需确保您的区域采用这些数字(即,如果您想为第一个区域使用全黑色三角形,请在区域向量中使用 17 而不是 1)。
  • 感谢您的帮助,我没有意识到 pch 将我的区域编号作为符号整数而不是默认的前 5 个符号 - 这很有用。有没有一种快速的方法可以用所需的符号编号替换区域编号?
  • as.numeric(as.character(factor(zone,levels=1:5,labels=c(12,14,17,21,22))))(以随机 pchs 编号作为标签)

标签: r pca vegan


【解决方案1】:

我会制作一个我想要的字符向量,然后按区域对其进行子集化

zone_pch <- c(16, 10, 3, 8, 2)
plot(dune_pca, type = "n", scaling = 3)
points(dune_pca, display = "sites", scaling = 3, pch = zone_pch[zone])

【讨论】:

    猜你喜欢
    • 2016-12-08
    • 1970-01-01
    • 2012-11-03
    • 2019-04-01
    • 1970-01-01
    • 2022-01-15
    • 1970-01-01
    • 2011-02-23
    • 1970-01-01
    相关资源
    最近更新 更多