给出如下数据框:
structure(list(city = structure(c(1L, 3L, 4L, 2L), .Label = c("bj",
"cq", "sh", "tj"), class = "factor"), area = c(1580.86, 1927.95,
532.24, 613.09), price = c(9.51, 94.42, 10.77, 8.58), level = structure(c(1L,
1L, 2L, 2L), .Label = c("a", "b"), class = "factor")), class = "data.frame", row.names = c(NA,
-4L))
我想绘制一个散点图,其中x
的{{1}}和area
的{{1}},同时,点的颜色仅基于{{1} },这意味着只有两种颜色可以区分y
和price
。
我怎么能用level
来画这个?谢谢。
答案 0 :(得分:1)
您可以为此使用以下代码
library(ggplot2)
ggplot(df, aes(x = area, y = price, col=level)) + geom_point()
ggplot(df, aes(x = area, y = price, col=level)) +
geom_point() +
ggrepel::geom_text_repel(aes(label = city))
df=structure(list(city = structure(c(1L, 3L, 4L, 2L), .Label = c("bj",
"cq", "sh", "tj"), class = "factor"), area = c(1580.86, 1927.95,
532.24, 613.09), price = c(9.51, 94.42, 10.77, 8.58), level = structure(c(1L,
1L, 2L, 2L), .Label = c("a", "b"), class = "factor")), class = "data.frame", row.names = c(NA,
-4L))