**編集、ここでは2つの素晴らしい解決策がありますが、答えとしてマークされていますが、@hrbrmstrは2つのggplotsを組み合わせた素晴らしいソリューションを提供します。 *2つのX軸ラベルを1つのX軸でggplotに追加します
ここでコード
breaks.major <- c(0,15,37.5,52.5,67.5,82.5,95,100) #defines the midpoints of the categories (label locations)
breaks.minor <- c(30,45,60,75,90) #defines the edges of the categories (second label set I need)
labels.minor <- c("","Extremely \nDissatisfied","Dissatisfied","Uncertain","Satisfied","Very \nSatisfied","Extremely \nSatisfied","")
lims =c(0,100)
g <- ggplot(mpg, aes(class))+
geom_bar()+
coord_flip()+
scale_y_continuous(limit = lims, minor_breaks = breaks.minor, breaks = breaks.major, labels = labels.minor) +
theme(panel.grid.major.x = element_blank()) +
theme(panel.grid.major.y = element_blank()) +
theme(axis.ticks.x=element_blank()) +
theme(axis.title= element_blank())
だそれはこのプロットを生成します。
私はX軸のラベルの2セットを持っている必要があり、1カテゴリ名(すなわち、 「満足」など)と、breaks.minor
位置(カテゴリの限界、すなわち垂直のパネルグリッド線に対応する)の値を示すものとの両方を含むことができる。現在のlabels.minor
ラベルを必要な追加ラベルより下にする必要があります。
私は現在、番号とカテゴリがすべて1つの長い文字列になるように改行を行いますが、プロットのサイズ変更で面白くなります。テキストボックスでこれを行うことができます。 ggplot?
余分なポイントあなたは自分のセクションの中央に私の現在のラベルを取得する場合(例えば、「非常に満足」中心から外れている)
これは私の所望の出力である(私の「mspaint」をご容赦)
あなたは 'labels.minor'ラベルは' breaks.minor'位置に値を下回るようにしたいように見えるが、後者は5アムIを持っていながら、前者は6つの要素を持っています何かが欠けている? –
@Weihuang Wong 6と7(実際には0と100を含む)は、カテゴリ境界とカテゴリの中間点です。希望する出力の更新された例を参照してください。 – Alex