agricolae package bar.group x-axis标签方向

时间:2018-02-09 03:09:09

标签: r

我使用agricolae进行了一次LSD,输出中有分配给组的字母,表示哪些组彼此显着不同。我希望能够生成一个条形图,显示每个条形图上方的字母,这样很容易看出哪些治疗方法彼此之间存在显着差异。

我尝试使用“bar.group”函数生成一个效果很好的图表,但是由于我有13个单独的处理,x轴标签重叠。

我想要将x轴标签的方向更改为90度,或者如果不可能,则找到另一种方法来绘制条形图,将条形图显示为每个条形图上方的字母。

我用来生成图的当前代码是

  

bar.group(细分.LSD $ groups,ylim = c(0,100))

以下是我正在使用的数据示例

structure(list(treatment = structure(c(1L, 1L, 1L, 1L), .Label = c("0.5 Fungaflor", 
"0.5 Tecto", "0.5 Tecto Fungaflor", "1 Fungaflor", "1 Tecto", 
"1 Tecto Fungaflor", "2 Fungaflor", "2 Tecto", "2 Tecto Fungaflor", 
"4 Fungaflor", "4 Tecto", "4 Tecto Fungaflor", "Water"), class = "factor"), 
    breakdown = c(11.11111111, 16.66666667, 20, 16.66666667), 
    stems = c(2.888888889, 2.916666667, 3.2, 3.166666667), tubers = c(6.666666667, 
    9.166666667, 8.466666667, 9.5), stemtubers = c(2.307692308, 
    3.142857143, 2.645833333, 3)), .Names = c("treatment", "breakdown", 
"stems", "tubers", "stemtubers"), row.names = c(NA, 4L), class = "data.frame")

1 个答案:

答案 0 :(得分:0)

如果我理解你的问题,这应该是一个非常简单的解决方法。我不熟悉bar.group()函数,但是,使用las = 2 inside是旋转轴标签的一般方法。如果这不起作用并且你不能使用rbase barplot()函数,我只需删除x xasis(通常通过包括xaxt ="")然后在barplot之后添加一个单独的命令的新轴()或bar.group()命令。

 axis(1,at=breakdown.LSD$groups, 
labels = c("Whatever","Your","labels","Are"), las=2)

至于重要标签。可以使用text()命令将其添加到绘图中(应该遵循图形命令)。只需给出x和y坐标并包含标签。

text(x=breakdown.LSD$groups, y = , 
labels = c("Whatever","Your","labels","Are"))
希望这会有所帮助。