私はdfが変化しており、異なる値をグループ化していますc
。私は今、私はプロットgroup c
のvalue
とlabel
の各geom_smoothラインに表示するgeom_smooth行の動的ラベルを作成する
ggplot(aes(x = a, y = b, group = c)) +
geom_point(shape = 1, aes(color = c), alpha = alpha) +
geom_smooth(method = "lm", aes(group = c, color = c), se = F)
多重線形回帰直線(geom_smooth)とscatterplottを取得するには、次のコードでそれらをプロットggplot2で 。 dfが変更されたときに新しいコードを書き込めないので、これは動的でなければなりません。
例:私のdf
だからこのケースでは、私は別の色でプロットの3つのgeom_smoothラインになるだろう。この
a b c
----------------
1.6 24 100
-1.4 43 50
1 28 100
4.3 11 50
-3.45 5.2 50
のように見えます。
今、私は単にグループc = 50
のためのラインに"50"
でグループc = 100
とテキストラベルとgeom_smooth隣"100"
でプロットにテキストラベルを追加したい、というように...新しいグループが取得するとdfに導入された新しいgeom_smooth行がプロットされ、ラベル付けする必要があります。
プロットのための全コード:
ggplot(aes(x = a, y = b, group = c), data = df, na.rm = TRUE) +
geom_point(aes(color = GG, size = factor(c)), alpha=0.3) +
scale_x_continuous(limits = c(-200,2300))+
scale_y_continuous(limits = c(-1.8,1.5))+
geom_hline(yintercept=0, size=0.4, color="black") +
scale_color_distiller(palette="YlGnBu", na.value="white") +
geom_smooth(method = "lm", aes(group = factor(GG), color = GG), se = F) +
geom_label_repel(data = labelInfo, aes(x= max, y = predAtMax, label = label, color = label))
おかげで、巧妙な解決策!私はかなり新しいですが、私はいくつかの 'NA'を' a'、 'b''と' c''を持っているのでDFで動作しません。あなたのコードの前に 'filter(!is.na(a))%>%'できませんでしたか? – Max
私は 'level(df $ c)'できません - それはNULLを返します(約10の値でなければなりません) – Max
'levels(df $ c)'変数がファクタである場合にのみ機能します(私は、 )。 –