更改 ggplot2 中的 x 轴刻度标签

时间:2021-02-19 11:50:38

标签: r ggplot2 label x-axis

我无法更改 ggplot 的 x 轴标签刻度。我想用包 scales 的 scale_x_discrete 功能来制作它,但我不知道,为什么它不起作用。我真的希望有人能帮我解决这个问题。 我使用的数据是这个

AAA
            x       freq     x.1     freq.1     x.2    freq.2 range       Mean     stdev        genotype
1   [5,10)  9.2382496  [5,10) 11.7824773  [5,10)  8.285946     2  9.7688911 1.8076552   SgcahuWT/huWT
2  [10,15) 10.0486224 [10,15) 25.0755287 [10,15) 13.078798     3 16.0676496 7.9468173   SgcahuWT/huWT
3  [15,20) 16.6936791 [15,20) 30.7150050 [15,20) 25.101543     4 24.1700759 7.0569200   SgcahuWT/huWT
4  [20,25) 28.2820097 [20,25) 21.0473313 [20,25) 27.701056     5 25.6767990 4.0197457   SgcahuWT/huWT
5  [25,30) 24.8784441 [25,30)  9.1641490 [25,30) 16.409423     6 16.8173388 7.8650851   SgcahuWT/huWT
6  [30,35)  9.8865478 [30,35)  2.1148036 [30,35)  7.717303     7  6.5728848 4.0102708   SgcahuWT/huWT
7  [35,40)  0.9724473 [35,40)  0.1007049 [35,40)  1.705930     8  0.9263608 0.8036044   SgcahuWT/huWT
8     <NA>         NA    <NA>         NA    <NA>        NA     2 26.6124363 2.4302528 Sgcahu
9     <NA>         NA    <NA>         NA    <NA>        NA     3 29.7895728 4.3987868 Sgcahu
10    <NA>         NA    <NA>         NA    <NA>        NA     4 20.1964562 2.2250172 Sgcahu
11    <NA>         NA    <NA>         NA    <NA>        NA     5 11.4369965 3.3301410 Sgcahu
12    <NA>         NA    <NA>         NA    <NA>        NA     6  7.4585544 1.5857787 Sgcahu
13    <NA>         NA    <NA>         NA    <NA>        NA     7  3.6131600 0.2595960 Sgcahu
14    <NA>         NA    <NA>         NA    <NA>        NA     8  0.8928238 0.2553705 Sgcahu
15    <NA>         NA    <NA>         NA    <NA>        NA     2 14.5077140 4.4202201             B6N
16    <NA>         NA    <NA>         NA    <NA>        NA     3 18.7298460 7.9077234             B6N
17    <NA>         NA    <NA>         NA    <NA>        NA     4 19.7890480 4.0319292             B6N
18    <NA>         NA    <NA>         NA    <NA>        NA     5 20.7221990 5.8959093             B6N
19    <NA>         NA    <NA>         NA    <NA>        NA     6 15.3303150 5.2919498             B6N
20    <NA>         NA    <NA>         NA    <NA>        NA     7  8.3015390 2.7982662             B6N
21    <NA>         NA    <NA>         NA    <NA>        NA     8  2.5672930 0.7966095             B6N
> 

这是我目前的 ggplot 代码

g <- ggplot(data = AAA, mapping = aes(x = range, y = Mean, fill = genotype)) +
  geom_col(data = AAA, mapping = aes(x = range, y = Mean), position = "dodge") +
  geom_errorbar(data = AAA, 
                mapping = aes( ymin=Mean-stdev, ymax=Mean+stdev), 
                position = dodge,
                size = 0.5, width = 0.3, col = c("#0000EE"))+
  scale_fill_manual(name = "",
                    labels = mylabel2, values = c(c("#6E6E6E", "#030303", "#FF4040"))) +
  theme(axis.text.y = element_markdown(),
        legend.text = element_markdown(),
        ) +
  labs( x ="Range of minimum Feret`s Diameter [μm]",
    y = "Percentage of Fibers [%]") +
  theme( axis.line = element_line(colour = "black", 
                                  size = 0.5, linetype = "solid"))

它给了我这个情节

Plot1

但我希望像您在本示例中看到的那样标记 x 轴以显示范围: Example 我已经尝试使用以下代码使用 scale_x_discrete 进行操作:

g + scale_x_discrete(guide = guide_axis(angle = 90), labels = mylabel)

但它只会带走我所有的 x 轴标签并且不起作用。有人有想法吗?可能这很容易,但我无法理解它。

非常感谢您的帮助!

0 个答案:

没有答案