【发布时间】:2018-05-04 01:29:09
【问题描述】:
设置如下:森林中 20 x 20 m 的样方内有 10 棵树。对于每棵树,我们使用 x,y 坐标知道物种、直径(以 cm 为单位)和样方内的位置。
我想在样方内绘制树木,其中点的大小是按比例绘制的,每个物种用不同的颜色圆圈表示。
使用此数据作为示例:
tag <- as.character(c(1,2,3,4,5,6,7,8,9,10))
species <- c("A","A","A","A","B","B","B","C","C","D")
diameter <- c(50,20,55,30,30,45,15,20,35,45)
x <- c(9,4,5,14,8,19,9,12,10,2)
y <- c(6,7,15,16,12,4,19,2,14,9)
df <- data.frame(tag, species, diameter, x, y)
首先我创建点模式
species_map <- ppp(df$x, df$y, c(0,20), c(0,20))
然后我标记种类和直径
marks(species_map) <- data.frame(m1 = df$species, m2=(df$diameter))
现在我可以绘制点模式,并且每个点都可以根据直径上的标记进行缩放。 “markscale”位设置为 0.01,因为直径测量单位为厘米,样方大小以米为单位。
plot(species_map, which.marks=2, markscale=.01)
现在我想让不同物种的圆圈颜色不同,但这就是我卡住的地方。
如果我尝试制作一个包含我的两个标记的图,我只会得到 2 个单独的图,其中一个使用不同大小的点来表示直径(正确),另一个使用不同的字符来表示不同的物种。
plot(species_map, which.marks= c(1,2), markscale=.01)
如何在绘制点按比例绘制点的同时,使用同一字符的不同颜色来表示不同的物种?
我怎样才能让它产生 1 个单图?
提前谢谢你。
杰
【问题讨论】:
标签: r plot ggplot2 spatstat ppp