web-dev-qa-db-ja.com

1つの水平行のggplot2凡例項目

これは愚かな質問のように思えるかもしれませんが、私は少し混乱しています。

先週書いてテストしたコードは、コードやRやRstudioのバージョンが変更されていなくても、突然出力を変更することにしたようです。

以前は、ggplot2を使用してプロットを描画し、凡例をプロットの下部に表示するように要求すると、アイテムは自動的に単一の水平行に配置されました。同じコードを実行すると、項目が2行の列に配置されます。

ここに例があります...

_mtcars$cyl <- (1:32)
subcars <- subset(mtcars, cyl<10)
subcars$cyl <- as.factor(subcars$cyl)

ggplot(subcars, aes(carb, mpg, group=cyl, colour=cyl)) + 
  geom_line() +
  theme_classic() +
  theme(plot.title = element_text(size = rel(2), face="bold", vjust=-4)) +
  theme(legend.position = "bottom") +
  theme(legend.direction = "horizontal") +
  labs(title="Title") 
_

ご覧のとおり、すでにtheme(legend.direction = "horizontal")の行を追加しようとしましたが、項目を2行5列で表示する凡例が表示されます(2行だけではありません)。

今、私は気づかなかった更新があるとしか想定できないので、この問題に対処するための新しい戦略を考案する必要があることを受け入れます(これは問題ではありませんでした)先週)。私のコードが突然動作を停止することに決めた理由(このウェルカムに関する任意の入力)について少し混乱していますが、奇妙な構成で表示される凡例項目の当面の問題の修正を見つけることに関心があります。

20
Psychologeek

これをプロットに追加します。

+ guides(colour = guide_legend(nrow = 1))
42
joran