简体   繁体   English

R-数字而不是点数

[英]R- plot numbers instead of points

I have successfully made a scatterplot, with different symbols for each data series. 我已经成功制作了一个散点图,每个数据系列都有不同的符号。 But what I want to do is make the same scatterplot with the point to show up as numbers. 但我想要做的是使相同的散点图与点显示为数字。 Not the value of each point, just an assigned number. 不是每个点的值,只是指定的数字。

As of right now, I have three depths I am plotting (0, 3, 6cm). 截至目前,我正在绘制三个深度(0,3,6cm)。 I have all my 0cm as triangles, etc. I want my 0cm points to be the character 0, the 3cm points to show up as 3, and the 6cm points to show up as 6. 我的所有0cm都是三角形等等。我希望我的0cm点为0,3cm点显示为3,6cm点显示为6。

Is this possible? 这可能吗?

You can use text . 你可以使用text Using @HongOoi data: 使用@HongOoi数据:

dat <- data.frame(x=rnorm(100), y1=rnorm(100)-1, y2=rnorm(100), y3=rnorm(100)+1)
plot(y1 ~ x, data=dat, type='n', ylim=c(-4, 4))     
text(dat$x,dat$y1,label=0,col='blue')
text(dat$x,dat$y2,label=1,col='green')
text(dat$x,dat$y3,label=2,,col='red')

在此输入图像描述

Sure, just pass the pch parameter as a character. 当然,只需将pch参数作为字符传递即可。

dat <- data.frame(x=rnorm(100), y1=rnorm(100)-1, y2=rnorm(100), y3=rnorm(100)+1)
plot(y1 ~ x, data=dat, pch="0", ylim=c(-4, 4))
points(y2 ~ x, data=dat, pch="3")
points(y3 ~ x, data=dat, pch="6")

ETA: one nice thing is that the pch parameter, like many base graphics parameters, is vectorised. ETA:一个pch是像许多基本图形参数一样, pch参数是矢量化的。 So you can do something like this (which also works for Agstudy's answer). 所以你可以做这样的事情(这也适用于Agstudy的回答)。

dat <- data.frame(x=rnorm(300), y=rnorm(300) + c(0,3,6), depth=rep(c(0,3,6), 100))
plot(x ~ y, data=dat, pch=as.character(dat$depth))

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

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