首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在一个气泡图中实现来自多个数据帧的数据

在一个气泡图中实现来自多个数据帧的数据
EN

Stack Overflow用户
提问于 2019-04-28 08:59:47
回答 1查看 147关注 0票数 0

我有一个尺寸为625616×12的数据框架,我想用一个气泡图来说明数据。为了说明我的情况,我将使用mtcar数据集。

代码语言:javascript
复制
mtcars$cyl = as.factor(mtcars$cyl)
bp = ggplot(as.data.frame(mtcars), aes(x = wt, y = mpg, size = qsec)) + geom_point(shape = 21)
bp

类似于我的数据框架,我在这个命令中使用了12列中的3列的数据。理想情况下,我想在这个泡泡图中添加另一组不同颜色的气泡(第4-6栏)。

我尝试使用"add“函数。

代码语言:javascript
复制
bp2 = ggplot(as.data.frame(mtcars), aes(x = wt2, y = mpg2, size = qsec2)) + geom_point(shape = 21)
plot(bp2, add = T)

不幸的是,这也没能成功。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-04-28 09:43:21

如果在同一数据集中有不同的xysize变量,则可以为每个geom_point定义它们的美观性。

代码语言:javascript
复制
df <- data.frame(x1 = rnorm(20), y1 = rnorm(20),
             x2 = rnorm(20), y2 = rnorm(20),
             z1 =  rnorm(20), z2 = rnorm(20))

ggplot(df) +
   geom_point(aes(x = x1, y = y1, size = z1), col = "red") + 
   geom_point(aes(x = x2, y = y2, size = z2), col = "blue")

如果您有两个不同的数据集,您也可以在geoms中定义它:

代码语言:javascript
复制
ggplot() +
  geom_point(aes(x = x1, y = y1, size = z1), col = "red", data = df1) + 
  geom_point(aes(x = x2, y = y2, size = z2), col = "blue",data = df2)

根据您的评论进行编辑:您可以通过使用scale_size_continuous(range = c(0, 10))和将10更改为另一个值来更改点数的总体大小。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/55888641

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档