0

ggplot2 を使用して凡例付きの密度プロットを作成していますが、最終結果に凡例を追加できません。

m <- ggplot(chickwts, aes(x = weight))
m + geom_density(kernel = "gaussian", adjust = .3, colour="green", size=1)+
  geom_density(kernel = "gaussian", adjust = 1, colour="red", size=1)+
  geom_density(kernel = "gaussian",adjust = 5, colour="blue", size=1)+
  geom_density(kernel = "gaussian",adjust = 10, colour="yellow", size=1)+
  geom_density(kernel = "gaussian",adjust = 20, colour="orange", size=1)

ここで見つけたいくつかの構文を使用しましたが、どれも機能しませんでした。ありがとうございました。

4

1 に答える 1

2

ggplot2その凡例は美学、またはaes()関数に渡される引数に基づいています。通常、要素を色の美学として割り当てると、色の凡例が自動的に作成されます。ただし、データセットには組み込みの密度グループ化係数がないchickwtsため、独自のスケールとラベルを作成する必要があります。

で色を直接定義する代わりに、次のように、でgeom_density()作成したカスタム カラー スケールに対応する名前付きの色の美学を定義できます。scale_colour_manual()

m <- ggplot(chickwts, aes(x = weight))
m + geom_density(kernel = "gaussian", adjust = .3, aes(colour=".3"), size=1)+
  geom_density(kernel = "gaussian", adjust = 1, aes(colour="1"), size=1)+
  geom_density(kernel = "gaussian",adjust = 5, aes(colour="5"), size=1)+
  geom_density(kernel = "gaussian",adjust = 10, aes(colour="10"), size=1)+
  geom_density(kernel = "gaussian",adjust = 20, aes(colour="20"), size=1) + 
  scale_colour_manual(values=c(".3"="green", "1"="red", "5"="blue", "10"="yellow", "20"="orange"), name="Densities")

密度プロットの例

于 2013-10-03T16:32:54.160 に答える