私はここで提供されている@jlhowardが、離散的に定義された等高線間隔でggplotに等高線プロットを作成するためのソリューションを使用しようとしています。しかし、私のデータセットはゼロを横切っており、これはゼロ以下の値の色とラベルを順序のずれてプロットしているようです。ggplotとゼロ交差する離散的な塗りつぶし輪郭をプロットする方法は?
x<-seq(-11,11,.03) # note finer grid
y<-seq(-11,11,.03)
xyz.func<-function(x,y) {-10.4+6.53*x+6.53*y-0.167*x^2-0.167*y^2+0.0500*x*y}
gg <- expand.grid(x=x,y=y)
gg$z <- with(gg,xyz.func(x,y)) # need long format for ggplot
library(ggplot2)
library(RColorBrewer) #for brewer.pal()
brks <- cut(gg$z,breaks=seq(-50,100,len=6))
brks <- gsub(","," - ",brks,fixed=TRUE)
gg$brks <- gsub("\\(|\\]","",brks) # reformat guide labels
ggplot(gg,aes(x,y)) +
geom_raster(aes(fill=brks))+
scale_fill_manual("Z",values=brewer.pal(6,"YlOrRd"))+
scale_x_continuous(expand=c(0,0))+
scale_y_continuous(expand=c(0,0))+
coord_fixed()
これは、このプロット生成します:あなたが見ることができるように
を、上位2つの輪郭のための色とラベルは後方です。どのようにこれを修正するための任意の提案?
PS私はイメージ作品へのリンクを願っています。それはあなたが、あなたは自動的にあなたがcut
で使用される切断の順序によって順序付けfactor
を取得cut
を使用して区切りを作成すると、私はポスト:(