r - 在ggplot中对Y轴上的不完整数值字符串进行排序

标签 r sorting ggplot2

我正在尝试在我的 ggplot 中的 y 轴上使用参与者记录 ID。记录 ID 会跳来跳去(例如 1、3、10、100)。我的问题有三个方面:

  1. 我想在 y 轴上显示每个 ID,但是当我转换为 as.numeric(as.character(record_id))) 时,轴是有序的但没有' 考虑到记录 ID 会跳过。

  2. 如果我转换为 as.character,这是正确的概念,但我不知道如何排序,所以它不会显示为 1、10、100、3,即使在使用 str_order 时也是如此

    到目前为止,使用 ggplot(sincevax_reshape, aes(x=value, y=as.character(sort(as.numeric(record_id))))) 让我看到了 y轴,但不是正确的排序。

  3. 一旦我获得要在 Y 轴上正确排序的记录 ID,是否有办法增加每个记录 ID 之间的垂直间距以使 Y 轴不那么拥挤/聚集?

     record_id  variable value
6           10    Sample  -182
7           11    Sample  -233
14          21    Sample  -189
16          23    Sample  -232
17          24    Sample  -214
21          30    Sample  -197
23          32    Sample  -133
24          33    Sample  -203
28          39    Sample  -165
29          41    Sample  -226
1105         3     Today   106
1106         4     Today   163
1107         6     Today    79
1108         7     Today   113
1109         9     Today   133
1110        10     Today   177
1111        11     Today   118

最终目标是这样的,顶部没有所有空白区域:

最佳答案

您可以尝试将数字转换为因子:

library(ggplot2)

df$record_id <- factor(df$record_id, levels = df$record_id)

ggplot(df, aes(x = value, y = record_id)) + 
  geom_col()

reprex package 创建于 2021-08-17 (v2.0.0)

使用的数据

df <- structure(list(record_id = c(10L, 11L, 21L, 23L, 24L, 30L, 32L, 
33L, 39L, 41L), variable = c("Sample", "Sample", "Sample", "Sample", 
"Sample", "Sample", "Sample", "Sample", "Sample", "Sample"), 
    value = c(-182L, -233L, -189L, -232L, -214L, -197L, -133L, 
    -203L, -165L, -226L)), class = "data.frame", row.names = c("6", 
"7", "14", "16", "17", "21", "23", "24", "28", "29"))

关于r - 在ggplot中对Y轴上的不完整数值字符串进行排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/68820920/

相关文章:

r - 基于广播中播放的音乐流派分类

r - 在随时间重复的连续数据中创建唯一的组

java - 如何将此插入排序从升序更改为降序 - java

r - 使用 geom_polygon 绘制 map 的地理边界不完整 - ggplot2

R:geom_point() 使用函数来选择形状?

r - 使用 ggplot2 在条形图中放置误差线

r - 计算点与海岸之间的最小距离

r - 在 R 中使用历史方法对组件 VaR 没有贡献

javascript - jquery 不对关联数组进行排序

android - 如何在 Android 中按文件名或日期按升序或降序对文件或文件夹进行排序?