r散点图中的不同绘图符号

Different plotting symbols in r scatter plot

    bweight  gestwks            hyp  sex
1   2974    38.5200004577637    0   female
2   3270    NA                  0   male
3   2620    38.150001525878899  0   female
4   3751    39.799999237060497  0   male
5   3200    38.889999389648402  1   male
6   3673    40.970001220703097  0   female

我想绘制婴儿体重 (bweight) 与妊娠期 (gestwks) 的关系图。

这是我的代码:

plot(courseworkData1$bweight ~ courseworkData1$gestwks, xlab="Gestation Period", ylab="Baby weight")

但是,我有 "hyp" 变量。简称为产妇高血压。我想绘制一个图,用不同的符号绘制患有高血压的婴儿体重,比如正方形或其他符号。我该怎么做?

我们可以使用 pch 参数来 plot 来指定要用于符号的变量:

编辑:

根据您的数据进行了调整:

创建 MRE:

courseworkData1 <- read.table(text="ID   bweight  gestwks            hyp  sex
1   2974    38.5200004577637    0   female
2   3270    NA                  0   male
3   2620    38.150001525878899  0   female
4   3751    39.799999237060497  0   male
5   3200    38.889999389648402  1   male
6   3673    40.970001220703097  0   female", header=TRUE, stringsAsFactors=FALSE)

通过 ?pch 我们可以获得可用交易品种的列表。然后我们只需要添加一个新变量来编码所需的密钥。例如,如果我们想使用正方形(key = 0)和三角形(key = 2):

courseworkData1$symbol_key <- ifelse(courseworkData1$hyp == 0, 0, 2)
plot(bweight ~ gestwks, data=courseworkData1, 
     xlab="Gestation Period", ylab="Baby weight", pch=courseworkData1$symbol_key)
legend("bottomright", title="hyp", legend = c("0", "1"), pch = c(0,2))

"If i'd like to change the symbols for example from plain circle to dark filled circle and squares to say triangles, how would you do that?"

R 有 25 个基于整数 1-25 的易于访问的绘图字符 (pch)。还有其他的,但这些是常用的。你可以从这些命令中看到它们:

# windows(7,4)
plot(-1:25, rep(0,27), pch=-1:25, cex=2, col="blue", bg="red", yaxt="n")
text(-1:25, rep(0,27), labels=-1:25, pos=1)
abline(v=c(14.5, 20.5))
mtext(text=c("Hollow symbols", "Filled symbols", "Filled symbols\nwith borders"), 
      side=3, at=c(6, 17.5, 23), line=-2)

对于 pch -1:14 你得到空心符号——它们不能用颜色或背景填充。只有符号 15 到 20 可以使用 col 图形参数(默认为黑色)完全填充颜色。对于符号 21 到 25,使用 bg 图形参数指定颜色(默认为 none),可以使用 col 指定的颜色添加额外的边框(默认为黑色) ) 和宽度使用 lwd(默认为 1)。符号 15 到 18 没有边框,因此 pch=16 给出的实心圆将比 pch=19 给出的实心圆小,其大小取决于边框的大小(lwd) 和符号的大小 (cex)。

因此,要获得深色实心圆,您可以选择 pch=16pch=19,对于(空心)三角形,您可以选择 pch=2pch=6(倒置).