R:ggplot2を使用してバープロットのビニングされたデータを平滑化する

astrsk

データは、長さ4000m以上のVillaribaとVillabajoの2つの村の間の道路沿いの木々の商品(リンゴとバナナ)の分布を示しています。データはすでにビニングされている(つまり、500 mごとに要約されている)か、場所の大きなエラーが提供されているため、500mによるビニングは自然です。カーネル平滑化を介して、それらを平滑化された事後分布として処理およびプロットしたいと思います。ggplot2パッケージでこれを行うには、2つの明白な方法があります。最初にデータを読み取ります(長い形式)。

library(ggplot2)
databas<-read.csv(text="dist,stuff,val
500,apples,10
1250,apples,25
1750,apples,55
2250,apples,45
2750,apples,25
3250,apples,10
3750,apples,5
500,bananas,7
1250,bananas,14
1750,bananas,20
2250,bananas,17
2750,bananas,10
3250,bananas,30
3750,bananas,20")

最初の試みは、geom_col()。を使用した退屈なバープロットです。次に、密度プロット(geom_density())と平滑化曲線(stat_smooth()または同等のものgeom_smooth())にそれぞれ含まれる2つのggplot2機能を使用できます3つの方法は次のように実現されます。

    p1<-ggplot(databas,aes(dist,val,fill=stuff,alpha=0.5))+geom_col(alpha=0.5,position="dodge")
    p2<-ggplot(databas,aes(dist,val,fill=stuff))+stat_smooth(aes(y=val,x=dist),method="gam",se=FALSE,formula=y~s(x,k=7))
    p3<-ggplot(databas,aes(dist,val,fill=stuff,alpha=0.5))+geom_density(stat="identity")

library(gridExtra)
grid.arrange(p1,p2,p3,nrow=3)

ggplot2の密度平滑化を使用した3つのプロット

すべての方法には欠点があります。重ね合わせた密度プロット(下のグラフ)が最も望ましい設計ですが、オプションstat="identity"(データがビニングされているため)では、通常のように見栄えのよい滑らかな分布を作成できません。このstat_smooth()オプションはほとんど優れた曲線を提供しますが、これらは単なる曲線です。だから:密度プロットからの着色と平滑化関数からの平滑化を組み合わせる方法は?それは、geom_density()のデータを滑らかにするためstat_smooth()ですか、それとも曲線の下の半透明の色でスペースを埋めるためですか?

aosmith

gamフィットが気に入った場合はstat = "smooth"withingeom_ribbon使用て曲線を描くことができますトリックはセットにあるymin0にしてymaxまで..y..で作成された特別な変数である、stat_smooth予測ラインです。

ggplot(databas, aes(x = dist, y = val, fill = stuff)) +
    geom_ribbon(stat = "smooth", aes(ymin = 0, ymax = ..y..), alpha = .5,
                method = "gam", se=FALSE, formula = y ~ s(x, k = 7))

ここに画像の説明を入力してください

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

Rのggplot2を使用して、ビン化されたクラスの連続ラスターデータをプロットします

分類Dev

ggplot2を使用してGoogleスプレッドシートの平滑化された折れ線グラフをエミュレートする

分類Dev

ggplot2を使用してグループ化された棒グラフのエラーバーをプロットする方法は?

分類Dev

ggplot2を使用してグループ化されたデータに対する複数のstat_function

分類Dev

ggplot2を使用して、スタックされたバープロットのデータフレームの順序を管理します

分類Dev

R ggplot2:グループ化されたサンプルの塗りつぶしをgeom_tileのバイナリデータと統合する

分類Dev

ビニングされたデータを使用してRでキルトプロットを作成するにはどうすればよいですか?

分類Dev

ggplot2 を使用した R のグループ化されたボックスプロット上のグループ化された散布図

分類Dev

ベースRコードのみを使用してグループ化されたポイントデータをプロットする

分類Dev

カウントの代わりに合計を使用してビニングされたデータをプロットする

分類Dev

ggplot2を使用して、データをサブセット化し、折れ線グラフに2つの変数をプロットします。

分類Dev

ggplot2は、グループ化されたデータフレームから最後の変数のみをプロットします

分類Dev

ggplot2とRのマップを使用してデータをマッピングする際の問題

分類Dev

ggplot2:グループ化されたバープロットに線とp値を追加する方法は?

分類Dev

ggplot2を使用した生の値[2つのデータフレーム]のグループ化されたドットプロットを含むグループ化された棒グラフ

分類Dev

ggplot2を使用して、指定されたx値でデータフレームの行ごとに線をプロットする

分類Dev

アップロードされたデータを使用してrShinyアプリでggplot2棒グラフをプロットすると、なぜ1本の棒しか表示されないのですか?

分類Dev

ggplot2を使用したRのスタックバープロット

分類Dev

ggplot2で要約されたデータフレームのスケーリングされファセット化されたクラスター化されたバーグラフを作成するにはどうすればよいですか?

分類Dev

facet_gridなしのグループ化されたスタックバープロットggplot2

分類Dev

Rの平滑化されたプロットからデータを抽出する方法は?

分類Dev

ggplot2を使用してブートストラップされたサンプル(複数の列)をプロットする

分類Dev

ggplotを使用してRでグループ化されたパーセントプロットを作成するにはどうすればよいですか?

分類Dev

ggplot2で投影されたグリッドデータを適切にプロットする方法は?

分類Dev

ggplot2を使用してmixEMタイプのデータをプロットする方法に関する提案

分類Dev

インポートされたデータを使用してRの重要な差異をプロットする

分類Dev

ggplotを使用して、異なるラベルのグループ化されたデータの1つのグラフに2つの折れ線グラフをプロットする

分類Dev

Rでggplot2を使用して2つのプロットをオーバーレイする

分類Dev

pandasデータセットを使用して関数ごとにグループ化します。Pythonでグループ化されたデータセットを使用したクロンバックのアルファ

Related 関連記事

  1. 1

    Rのggplot2を使用して、ビン化されたクラスの連続ラスターデータをプロットします

  2. 2

    ggplot2を使用してGoogleスプレッドシートの平滑化された折れ線グラフをエミュレートする

  3. 3

    ggplot2を使用してグループ化された棒グラフのエラーバーをプロットする方法は?

  4. 4

    ggplot2を使用してグループ化されたデータに対する複数のstat_function

  5. 5

    ggplot2を使用して、スタックされたバープロットのデータフレームの順序を管理します

  6. 6

    R ggplot2:グループ化されたサンプルの塗りつぶしをgeom_tileのバイナリデータと統合する

  7. 7

    ビニングされたデータを使用してRでキルトプロットを作成するにはどうすればよいですか?

  8. 8

    ggplot2 を使用した R のグループ化されたボックスプロット上のグループ化された散布図

  9. 9

    ベースRコードのみを使用してグループ化されたポイントデータをプロットする

  10. 10

    カウントの代わりに合計を使用してビニングされたデータをプロットする

  11. 11

    ggplot2を使用して、データをサブセット化し、折れ線グラフに2つの変数をプロットします。

  12. 12

    ggplot2は、グループ化されたデータフレームから最後の変数のみをプロットします

  13. 13

    ggplot2とRのマップを使用してデータをマッピングする際の問題

  14. 14

    ggplot2:グループ化されたバープロットに線とp値を追加する方法は?

  15. 15

    ggplot2を使用した生の値[2つのデータフレーム]のグループ化されたドットプロットを含むグループ化された棒グラフ

  16. 16

    ggplot2を使用して、指定されたx値でデータフレームの行ごとに線をプロットする

  17. 17

    アップロードされたデータを使用してrShinyアプリでggplot2棒グラフをプロットすると、なぜ1本の棒しか表示されないのですか?

  18. 18

    ggplot2を使用したRのスタックバープロット

  19. 19

    ggplot2で要約されたデータフレームのスケーリングされファセット化されたクラスター化されたバーグラフを作成するにはどうすればよいですか?

  20. 20

    facet_gridなしのグループ化されたスタックバープロットggplot2

  21. 21

    Rの平滑化されたプロットからデータを抽出する方法は?

  22. 22

    ggplot2を使用してブートストラップされたサンプル(複数の列)をプロットする

  23. 23

    ggplotを使用してRでグループ化されたパーセントプロットを作成するにはどうすればよいですか?

  24. 24

    ggplot2で投影されたグリッドデータを適切にプロットする方法は?

  25. 25

    ggplot2を使用してmixEMタイプのデータをプロットする方法に関する提案

  26. 26

    インポートされたデータを使用してRの重要な差異をプロットする

  27. 27

    ggplotを使用して、異なるラベルのグループ化されたデータの1つのグラフに2つの折れ線グラフをプロットする

  28. 28

    Rでggplot2を使用して2つのプロットをオーバーレイする

  29. 29

    pandasデータセットを使用して関数ごとにグループ化します。Pythonでグループ化されたデータセットを使用したクロンバックのアルファ

ホットタグ

アーカイブ