r - R仅使用宽数据框创建ggplot2 facet_wrap
问题描述
练习 mtcars、ggplot2、facet_wrap、pivot_longer 等。我正在尝试学习如何使用长数据框创建 ggplot2 facet_wrap 图 - ggplot2 中的代码是什么样的?
你可以看到我已经创建了一个数字变量的直方图:
ggplot(data = mtcars, aes(x = mpg)) +
geom_histogram(bins = 32, color = 'black', fill = 'lightblue')
在这里我选择数值变量并将数据框变成一个长数据框:
mtcars_numeric <- mtcars %>%
select(mpg, disp, hp, drat, wt, qsec)
mtcars_long_numeric <- pivot_longer(mtcars_numeric, names_to = 'names', values_to = 'values', 2:6)
在这里,我用 facet_wrap 绘制长数据框。
ggplot(mtcars_long_numeric, aes(x = values, color = names)) +
facet_wrap(~names, scales = 'free') +
geom_histogram(bins = 32, color = 'black', fill = 'lightblue')
我只是问这个问题是为了更好地理解 R 和 ggplot2。如果只使用 mtcars 数据框而不使用我使用 tidyr::pivot_longer 动词创建的长数据框,那么代码会是什么样子来创建一个像上面右图一样的 facet_wrap 图?我只是想了解这个ggplot2语法的逻辑,过程,长数据框可以省去进入ggplot2的那种麻烦。我已经知道如何将一个数据框变成一个长数据框,然后关闭该值——我知道我正在尝试找到一种不太理想的方法来做我已经知道该怎么做的事情——我只是在尝试学习并获得更大的视野!
ggplot(mtcars, aes(x = ?) +
facet_wrap(~ ?, scales = 'free') +
geom_histogram(bins = 32, color = 'black', fill = 'lightblue')
解决方案
推荐阅读
- javascript - 闭包场景:为什么在闭包范围内分配函数传递的参数
- thingsboard - 带有树莓派 4 的事情板
- javascript - 无法使用 php 循环在 jquery 中获取按钮值/属性
- java - 从一个屏幕移动到下一个屏幕时,Android Studio 复选框未选中
- javascript - 我正在制作一个 Javascript Toggler 所以我放了两张图片,一张是晚上,一张是晚上的图片没有正确出现
- c# - 如何使用 JSchema 动态验证 JSON
- c# - 使用 CaliburnMicro 的 DataGrid 上的 ContextMenu 的 ActivateItem 问题
- java - Java:即使在使用 GSON Streaming API 之后也出现 OutOfMemoryError
- video.js - video.js 是 fastSeek 可能的,如果是这样怎么办?
- javascript - 在使用 javascript 保存之前更改 json 属性 na,e