4

Rでggplot2を使用してシェープファイルをプロットしたいと思います。具体的には、いくつかの主要都市の各ブロックに住む白の割合をプロットしたいと思います。これまで、私はニューヘブンと協力してきました。問題は、一部のブロックが設定されていないことです。この場合、%white=NAです。Ggplotは、これらのブロックを自動的に灰色で描画します。白で描きたいです。

灰色のNAを持つニューヘブン

c_opts <- theme(axis.text.x=element_blank(), 
axis.text.y=element_blank(), 
axis.title.x=element_blank(), 
axis.title.y=element_blank(), 
axis.ticks = element_blank(),
legend.text=element_text(size=10), 
legend.background=element_blank(), 
legend.key=element_rect(fill='transparent', colour=NA), 
panel.grid.major=element_line(colour='white'), 
panel.background=element_rect(fill='transparent', colour=NA),
legend.justification=c(0,0), 
legend.position=c(.15,.15),
legend.title=element_text(size=11, face='bold'))

map <- qplot(PolyCoordsY, PolyCoordsX, data=nh_geom, group=Poly_Name, fill = pc_nhwhite, geom="polygon", xlab = "", ylab = "", main = "New Haven") 
map + c_opts + scale_fill_gradient(name = "% White")

scale_fill_gradient引数にna.value=NAを追加することで、NAを除外できます。

map <- qplot(PolyCoordsY, PolyCoordsX, data=nh_geom, group=Poly_Name, fill = pc_nhwhite, geom="polygon", xlab = "", ylab = "", main = "New Haven") 
map + c_opts + scale_fill_gradient(name = "% White", na.value = NA)

NAが除外されたニューヘブン

これにより、NAブロックが白で描画されますが、これらのブロックのポリゴン境界も除外されます。ポリゴンの輪郭を維持する方法を知っている人はいますか?

4

1 に答える 1

0

再現可能なデータセットがなければ、これが特定のケースで機能するかどうかをテストできません.

na.value次のように色を渡してみてください。

scale_fill_gradient(name = "% White",na.value="white")
于 2012-12-02T21:49:31.717 に答える