如何使用R中X轴中的因子制作点图?

Joh*_*Gil 1 plot r ggplot2

我试图得到一个用于演示目的的情节(我知道我没有统计意义,但恰恰是为了讨论这个)。该图必须在 X 轴 (Data$Site) 中有因子,在 Y 轴 (Data$Count) 中有特定值。对于每个“站点”,必须出现一个大小等于 Data$Mean 的点。我当前的代码及其结果如下:

> is.factor(Data$Site)
TRUE
> Data$Site
[1] Creek  Shade  Valley
Levels: Creek Shade Valley

> Data$Count
[1] 2.1 3.0 8.5

> Data$Mean
[1] 1.456 2.3445 1.345

plot(Data$Site, Data$Count, type = "p", pch=15, cex=Data$Mean)
Run Code Online (Sandbox Code Playgroud)

在此处输入图片说明

显然,我不想要线条。我想要 Data$Mean 大小的点。在 R 中有快速而简洁的方法吗?我已经查看了其他包,如lattice 和 ggplot 无济于事。

AOG*_*STA 5

使用默认方法 - plot.default() 关闭轴。然后使用axis() 函数创建自定义轴。在使用它们设置 cex 之前,我使用了 1/20 的比例作为我的手段。您可能不需要为您的数据执行此操作。

d<-data.frame(Site=c('A','B','C'),
              Mean=c(15,25,60),
              Count=c(100,200,400))
> is.factor(d$Site)
[1] TRUE

plot.default(d$Site,d$Count,type='p',axes = FALSE,cex=d$Mean/20)
axis(side = 1, at = as.numeric(d$Site), labels = d$Site)
axis(side=2, at=d$Count, labels = d$count)
Run Code Online (Sandbox Code Playgroud)

在此处输入图片说明