0

你好我一直在尝试使用qplot来绘制这个data.frame

print(Data)
    partition     axis1     axis2
V1      Alpha  0.064989 -0.093558
V2       Beta -0.065058  0.009540
V3      Delta  0.100572 -0.081021
V4        Zed -0.152011  0.057507
V5      Alpha -0.039480 -0.020070
V6       Beta  0.044027 -0.055642
V7     Catsup -0.149427  0.038032
V8        Zed  0.133783 -0.021328
V9        Zed -0.014662 -0.029677
V10     Alpha -0.094468  0.002095
V11      Beta  0.090668 -0.033317

我正在尝试使用此代码按轴绘制并按组着色

qplot(x="axis1", y= "axis2", data = taxi, color= "partition)

但什么都没有出现。我究竟做错了什么?

4

2 回答 2

4

您不想在 ggplot 或 qplot 中引用列名。有一些类似于隐式with或的东西attach,可以让您引用列,就像它们已经在您的命名空间中定义为变量一样。

qplot(data=taxi, x=axis1, y=axis2, color=partition)
于 2013-06-21T16:22:58.197 回答
2

贾斯汀解决方案是您的方式:无需在 ggplot2 中引用 aes。但是使用aes_string,您可以获得与引用变量相同的结果:

ggplot(data = taxi) +
 geom_point(aes_string(x="axis1", y= "axis2", color= "partition"))

这可能很有用,例如,如果您将 ggplot 调用包装在一个函数中,例如......

于 2013-06-21T16:39:58.603 回答