r - R ggplot2 - 自定义位置的箱线图?
问题描述
我有兴趣在 R 中制作一个由一系列箱线图组成的图(最好使用 ggplot2,但 base-R 解决方案也适用于我)。我知道如何使用基本的 ggplot2 来做到这一点,但我希望箱线图的位置(沿 x 轴)明确取决于组名,在本例中是一个数字。为了说明,想象一下我在下面的(完全假的和毫无意义的)数据框:
require(ggplot2)
example_df = data.frame(xval = rep(c(5, 10, 20, 50, 100, 200), each = 5), yval = rnorm(30))
example_df %>% ggplot(aes(x = as.character(xval), y = yval)) + geom_boxplot()
这里,“xval”的值代表一个有意义的数字(例如,给予植物或某物的水量)以及一个组。我想要的图表会将xval = 5
组的箱线图放在 x=5 线上,依此类推。ggplot 自动执行的操作(据我所知,我需要将 xval 转换为字符才能使代码甚至完全评估)是按字母顺序对 x 值进行排序,生成如下图:
有没有办法手动更改每个单独的箱形图的位置,使它们最终都在正确的位置?请注意,将 xval 值更改为“005”、“010”等可以正确排序它们,但放置仍然不准确(例如, 和 的图应该相对于 和xval = 100
彼此xval = 200
远离)。希望这是有道理的,并希望有一个解决方案!xval = 5
xval = 10
解决方案
推荐阅读
- python - 使用 pandas json_normalize 对动态记录和内部数组进行 Json 规范化
- testing - 如何测试使用 fetch 的自定义反应钩子?
- javascript - 在一个函数中调用两个 jquery 语句
- python - 接受 7 个位置参数,但有 8 个错误
- r - 读取 R 目录中最新的 xlsx 2 文件并将其合并
- python - 如何将字符串添加到列表中的每个字符串?
- docusaurus - 构建项目时出现 Docusaurus 错误
- ios - 如何在 ARKit 中暂停 SCNAudioPlayer 播放?
- c# - EditorCoroutine 上的非阻塞 GUI
- algorithm - 找到经常出现的数字的最佳 O(n) 算法?