我想在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")
我可以通過添加na.value = NA到scale_fill_gradient參數排除在NAS。
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塊,這也排除了這些區塊的多邊形邊界。有誰知道如何保持多邊形輪廓?
請提供一個可重複的數據集。另外,考慮使用'ggplot()'而不是'qplot()',因爲它更好地處理涉及的繪圖任務。 – metasequoia