2017-09-12 22 views
0

私はx軸のラベルが一様ではないプロットを持っています。 axis.text.x = element_text()を使って、ラベルを-45度回転させ、vjust = 1でそれらを動かしました。しかし、x軸自体の言葉は混乱しており、個々のラベルは一様に回転していないようです。これをどうすれば解決できますか?ggplot2で、わずらわしいx軸ラベルを修正するにはどうすればよいですか?

まず、文字が不均等に配置されているようです。アイゼンハワーの "nh"、カーターの "Ca"と "rt"、W_Bushの "Bu"に注意してください。第二に、レーベル自体の言葉は均等に角度が付けられておらず、特にCarterからW_Bushへと目立っているようです。

can be found here

コード:事前に

bp <- 
    ggplot(df1, aes(
    x = df1$President, 
    y = df1$Count, 
    fill = df1$President 
)) + geom_bar(stat = "identity", width = 0.5) + theme(axis.text.x = element_text(
    angle = -45, 
    hjust = 0, 
    vjust = 1 
)) + labs(
    title = "Executive Orders Issued by President", 
    subtitle = "After World War II", 
    x = "President", 
    y = "Count" 
) + theme(legend.position = "none") 

ありがとう!

+0

あなたは何のように見える/期待していますか? –

+1

ggplotコードで、 'df $'のすべてのインスタンスを削除してください。データフレーム名は 'aes'内で再記述されるべきではありません。裸の列名のみを使用する必要があります。 – eipi10

+0

@ kevin.arseneauまず、文字は不均等に配置されているようです。アイゼンハワーの "nh"、カーターの "Ca"と "rt"、W_Bushの "Bu"に注意してください。第二に、レーベル自体の言葉は均等に角度が付けられておらず、特にCarterからW_Bushへと目立っているようです。私は私の元の質問でそれを明確にすべきだった。知らせてくれてありがとうございます。 –

答えて

0

この場合、回転の必要を避けるために、coord_flipを使用して名前をy軸に配置します。私はまた、バーのための単一の色を使用し、並べ替えを検討するだろう。あなたは `angle`と` vjust`はあなたが求めて正確に何を行っていないということ?と思わせる何か

# Example data: 

presidents <- structure(list(President = c("George Washington", "John Adams", 
              "Thomas Jefferson", "James Madison", 
              "James Monroe", "John Quincy Adams", 
              "Andrew Jackson", "Martin van Buren", 
              "William Henry Harrison", "John Tyler"), 
          Number = c(8, 1, 4, 1, 1, 3, 12, 10, 0, 17)), 
          row.names = c(NA, 10L), 
          class = "data.frame", 
          .Names = c("President", "Number")) 

presidents %>% 
    ggplot(aes(reorder(President, Number), Number)) + 
     geom_col(fill = "skyblue3") + 
     coord_flip() + 
     labs(x = "President") 

enter image description here

関連する問題