繁体   English   中英

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

我想根据妊娠期 (gestwks) 绘制婴儿体重 (bweight) 。

这是我的代码:

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))

在此处输入图片说明

“如果我想将符号从普通圆形更改为深色实心圆形,将正方形更改为三角形,您会怎么做?”

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,您会得到空心符号——它们不能用颜色或背景填充。 使用col图形参数(默认为黑色),只能用颜色完全填充符号 15 到 20。 对于符号 21 到 25,使用bg图形参数指定颜色(默认为无),并且可以使用使用col (默认为黑色)指定的颜色和使用lwd (默认为 1)指定的宽度添加其他边框。 符号 15 到 18 没有边框,因此pch=16给出的实心圆将小于pch=19给出的实心圆,大小取决于边框的大小 ( lwd ) 和符号 ( cex )。

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

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM