4

ggplot2で、ポイントのグループのラベルに色を付けることは可能ですか?

下のプロットの左側のテキストラベルのいくつかに色を付けて、プロット自体に表示されている赤いマーカーに加えて、スイング状態を赤い色で表示したいと思います。

選挙ドットプロット

コード(データ付き)はこちらです。-回答を反映するように編集

プロットは完璧にはほど遠いので、追加の提案は大歓迎です。誰かが興味を持っているなら、はるかに優れたグラフがあります(しかし、私はそれらをコーディングするのに十分ではありません)。

4

3 に答える 3

7

ラベル (軸テキスト) の色はelement_text=、関数の引数によって設定されますtheme()。ラベルごとに異なる色を設定できます。レベルの列があるのでSwing、色の設定に使えます。

dw_plot + theme(axis.text.y = element_text(colour = ifelse(dw_data$Swing=="Swing State","red","grey")))
于 2013-01-13T14:37:34.937 に答える
3

他の回答は既に受け入れられていますが、視覚的な例として...より複雑なスキームの場合は、以下のように「赤」と「黒」を使用する代わりに、必要な色と参照を使用してデータ フレームに列を追加するだけです。

library(ggplot2)

set.seed(1234)
x <- data.frame(state = paste("State_", LETTERS, sep = ""), 
   margin = runif(26, -50, 50), swing = rep("no", 26))
x[c(10:15), 'swing'] <- "yes"
mycolours <- c("yes" = 'red', "no" = "black")

ggplot(data = x, aes(x = margin, y = state)) +
    geom_point(size = 5, aes(colour = swing)) +
    scale_color_manual("Swing", values = mycolours) +
    theme(axis.text.y = element_text(colour = 
        ifelse(x$swing == 'yes', 'red', 'black'))) +
    theme()

スクリーンショット

于 2013-01-13T15:13:41.887 に答える