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

ファベルン

私はルックアンドフィールが非常に好きで、ggplot2ラスターデータを表示するために頻繁に使用します(たとえば、時変降水フィールドのタイムステップにわたるファセットは非常に便利です)。

ただし、連続ラスター値を個別のビンにビン化し、各ビンに単一の色を割り当てることが簡単に可能かどうかはまだ疑問です(多くのGISシステムと同様)。

オプションの引数guide = "legend"breaks引数を試してみましたscale_fill_gradientただし、これらはグラフ側の凡例にのみ影響しますが、プロットされた値は連続しています。

library(ggplot2)
data <- data.frame(x=rep(seq(1:10),times = 10), y=rep(seq(1:10),each = 10), value = runif(100,-10,10))
ggplot(data = data, aes(x=x,y=y)) +
  geom_raster(aes(fill = value)) +
  coord_equal() +
  scale_fill_gradient2(low = "darkred", mid = "white", high = "midnightblue",
                       guide = "legend", breaks = c(-8,-4,0,4,8))

私の質問は、主にggplot、にプロットされたデータを離散化して、グラフの読者が色で表された値について定量的な結論を出すことができるようにする方法です。

次に、scale_fill_gradient2ゼロまたは別の特定の値を中心とする発散カラーパレット(と同様を引き続き使用するにはどうすればよいですか?

ファベルン

実際、最良の方法は、基になるデータセットを手動で離散化して変更することです。以下の回答は、joranによる回答に基づいています

library(ggplot2)
set.seed(1)
data <- data.frame(x     = rep(seq(1:10),times = 10), 
                   y     = rep(seq(1:10),each = 10),
                   value = runif(100,-10,10))

# Define category breaks
breaks <- c(-Inf,-3:3,Inf)
data$valueDiscr <- cut(data$value,
                       breaks = breaks,
                       right = FALSE)

# Define colors using the function also used by "scale_fill_gradient2"
discr_colors_fct <- 
  scales::div_gradient_pal(low = "darkred",
                           mid = "white", 
                           high = "midnightblue")
discr_colors <- discr_colors_fct(seq(0, 1, length.out = length(breaks)))
discr_colors
# [1] "#8B0000" "#B1503B" "#D18978" "#EBC3B9" "#FFFFFF" "#C8C0DB" "#9184B7" "#5B4C93" "#191970"

ggplot(data = data, aes(x=x,y=y)) +
  geom_raster(aes(fill = valueDiscr)) +
  coord_equal() +
  scale_fill_manual(values = discr_colors) +
  guides(fill = guide_legend(reverse=T))

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

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

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

編集
0

コメントを追加

0

関連記事

分類Dev

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

分類Dev

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

分類Dev

連続ラスターデータを離散色のビン化されたクラスに再分解します

分類Dev

連続ラスターデータを離散色のビン化されたクラスに再分解します

分類Dev

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

分類Dev

エラーなしでaesカラー変数を使用してscale_colour_stepsを使用するにはどうすればよいですか:ビン化されたスケールは連続データのみをサポートしますか?

分類Dev

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

分類Dev

R:ggplot2を使用した合計のクラスター化された列

分類Dev

R:ggplot2を使用した合計のクラスター化された列

分類Dev

ggplot2 geom_tile()を使用して、クラスターによって定義されたタイルのグループを強調表示します

分類Dev

R:ggplot2のグループ化されたヒストグラムに通常の近似を追加します

分類Dev

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

分類Dev

空のデータスペースを削除し、グループ化された棒グラフで均一な棒幅を維持します。ggplot2でファセットグリッドを使用する

分類Dev

Castle Windsor を使用して、サービス クラスのコンストラクター内のパラメーター化されたコンストラクターでクラスを初期化します。

分類Dev

Rまたはggplot2を使用して、散布図のyアジスに関するデータを箱ひげ図でプロットします。

分類Dev

連続スケールでggplot2プロットに個別のラベルを追加します

分類Dev

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

分類Dev

Rのggplot2のスタックされたバープロットに水平線を追加し、凡例に表示します

分類Dev

すべてのエントリを組み合わせたスタックおよびグループ化されたグラフggplot2

分類Dev

Javaプログラムから呼び出されたWindowsコマンドプロンプトを使用して、複数の連続したスペースを含む文字列をパラメータとしてjarファイルに渡します。

分類Dev

ggplot2を使用して、スタックされたバープロットで上位3つのエントリのみを表示し、残りを「その他」として表示します

分類Dev

データの大きさが大きい場合にggplot2を使用してヒストグラムをプロットする

分類Dev

パラメーターC ++のタイプによってオーバーロードされたコンストラクターを特殊化します

分類Dev

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

分類Dev

データ属性を使用してネストされたリストの順序をドラッグアンドドロップします

分類Dev

Symfony2:モックされたサービスはコンテナーに設定されていますが、コントローラーによって使用されていません(元のサービスを引き続き使用します)

分類Dev

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

分類Dev

拡張イベントを使用してクラスター化されたSQLServerのデッドロックを追跡する方法

分類Dev

Ninjectを使用して初期化されたインスタンスをWebAPIコントローラーのコンストラクターに渡す方法

Related 関連記事

  1. 1

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

  2. 2

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

  3. 3

    連続ラスターデータを離散色のビン化されたクラスに再分解します

  4. 4

    連続ラスターデータを離散色のビン化されたクラスに再分解します

  5. 5

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

  6. 6

    エラーなしでaesカラー変数を使用してscale_colour_stepsを使用するにはどうすればよいですか:ビン化されたスケールは連続データのみをサポートしますか?

  7. 7

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

  8. 8

    R:ggplot2を使用した合計のクラスター化された列

  9. 9

    R:ggplot2を使用した合計のクラスター化された列

  10. 10

    ggplot2 geom_tile()を使用して、クラスターによって定義されたタイルのグループを強調表示します

  11. 11

    R:ggplot2のグループ化されたヒストグラムに通常の近似を追加します

  12. 12

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

  13. 13

    空のデータスペースを削除し、グループ化された棒グラフで均一な棒幅を維持します。ggplot2でファセットグリッドを使用する

  14. 14

    Castle Windsor を使用して、サービス クラスのコンストラクター内のパラメーター化されたコンストラクターでクラスを初期化します。

  15. 15

    Rまたはggplot2を使用して、散布図のyアジスに関するデータを箱ひげ図でプロットします。

  16. 16

    連続スケールでggplot2プロットに個別のラベルを追加します

  17. 17

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

  18. 18

    Rのggplot2のスタックされたバープロットに水平線を追加し、凡例に表示します

  19. 19

    すべてのエントリを組み合わせたスタックおよびグループ化されたグラフggplot2

  20. 20

    Javaプログラムから呼び出されたWindowsコマンドプロンプトを使用して、複数の連続したスペースを含む文字列をパラメータとしてjarファイルに渡します。

  21. 21

    ggplot2を使用して、スタックされたバープロットで上位3つのエントリのみを表示し、残りを「その他」として表示します

  22. 22

    データの大きさが大きい場合にggplot2を使用してヒストグラムをプロットする

  23. 23

    パラメーターC ++のタイプによってオーバーロードされたコンストラクターを特殊化します

  24. 24

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

  25. 25

    データ属性を使用してネストされたリストの順序をドラッグアンドドロップします

  26. 26

    Symfony2:モックされたサービスはコンテナーに設定されていますが、コントローラーによって使用されていません(元のサービスを引き続き使用します)

  27. 27

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

  28. 28

    拡張イベントを使用してクラスター化されたSQLServerのデッドロックを追跡する方法

  29. 29

    Ninjectを使用して初期化されたインスタンスをWebAPIコントローラーのコンストラクターに渡す方法

ホットタグ

アーカイブ