我花了很多时间寻找它,但无法找到。如果这是一个基本问题,请不要爆炸我:)
我想用下面的矢量生成散点图
> x
[1] "a" "b" "c" "d"
> y
[1] 5 6 3 4
我使用了xyplot,但它提供了以下错误
> xyplot(y~x)
Hit <Return> to see next plot:
Warning messages:
1: In order(as.numeric(x)) : NAs introduced by coercion
2: In diff(as.numeric(x[ord])) : NAs introduced by coercion
3: In function (x, y, type = "p", groups = NULL, pch = if (is.null(groups)) plot.symbol$pch else superpose.symbol$pch, :
NAs introduced by coercion
答案 0 :(得分:10)
有很多方法可以做到这一点。以下是每个主要图形库的一个建议,即基础graphics
,lattice
和ggplot2
:
在基础图形中,您可以针对y:
绘制factor(x)
plot(factor(x), y)
在lattice
中,您可以使用dotplot
:
library(lattice)
dotplot(y~x)
使用ggplot2
,您可以使用qplot
或ggplot
(将数据转换为data.frame
后):
library(ggplot2)
qplot(x, y)
ggplot(data.frame(x, y), aes(x,y)) + geom_point()