r ggplot2堆叠的条形图未绘制所有层

樱桃树

ggplot2无法在堆积的条形图上绘制变量(水)时遇到问题。

数据如下:

data <- structure(list(PARK_NON = structure(c(3L, 3L, 3L, 3L, 3L, 3L, 
3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 6L, 6L, 6L, 6L, 6L, 6L, 6L, 
6L, 6L, 6L, 6L, 6L, 6L, 6L, 6L), .Label = c("apis", "indu", "miss", 
"non_apis", "non_indu", "non_miss", "non_piro", "non_sacn", "non_slbe", 
"piro", "sacn", "slbe"), class = "factor"), variable = structure(c(15L, 
9L, 3L, 10L, 12L, 7L, 6L, 11L, 8L, 2L, 5L, 1L, 14L, 4L, 13L, 
15L, 10L, 12L, 6L, 11L, 7L, 9L, 5L, 1L, 8L, 2L, 4L, 13L, 3L, 
14L), .Label = c("Agriculture", "Barren land", "Developed - High intensity", 
"Developed - Medium intensity", "Developed - Low intensity", 
"Developed - Open space", "Evergreen forest", "Deciduous forest", 
"Mixed forest", "Herbaceous", "Pasture", "Shrub", "Woody wetland", 
"Herbaceous wetland", "Water"), class = "factor"), perc_veg = c(26.0239390821837, 
0.0293350851750396, 6.90366110126389, 1.21719944965728, 1.57541802496374, 
0.394990724328702, 5.82528684342088, 4.05485247757519, 16.4441745065715, 
1.31842615202185, 9.09594225533093, 4.04411005201813, 4.73410430895216, 
7.12470716561102, 11.213852770926, 7.66680361881418, 2.1247481894809, 
1.30789300876845, 10.5308007720824, 12.723205663498, 0.713438751370985, 
0.0478161985127231, 16.4578439049856, 11.5045071302907, 13.2759304844946, 
0.0640865818499777, 10.2423233639193, 0.795200353968627, 5.43302045035016, 
7.11238152761342), in_out = structure(c(1L, 1L, 1L, 1L, 1L, 1L, 
1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 
2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L), .Label = c("Inside", "Outside"
), class = "factor")), class = "data.frame", row.names = c(NA, 
-30L), .Names = c("PARK_NON", "variable", "perc_veg", "in_out"
))

我想data$variable按特定顺序堆叠,所以我定义了因子顺序...

data$variable <- factor(data$variable,
                          levels=c('Agriculture','Barren land','Developed - High intensity','Developed - Medium intensity','Developed - Low intensity',
                                   'Developed - Open space','Evergreen forest','Deciduous forest','Mixed forest','Herbaceous','Pasture','Shrub',
                                   'Woody wetland','Herbaceous wetland','Water'))

然后画...

library (ggplot2)
#colors to be used for NLCD classes
wa <- rgb(71/255,107/255,161/255,1)   #water
do <- rgb(222/255,202/255,202/255,1)  #developed-open
dl <- rgb(217/255,148/255,130/255,1)  #developed-low density
dm <- rgb(238/255,0/255,0/255,1)      #developed-medium density
dh <- rgb(171/255,0/255,0/255,1)      #developed-high density
bl <- rgb(179/255,174/255,163/255,1)  #barren land
df <- rgb(104/255,171/255,9/255,1)    #deciduous forest
ef <- rgb(28/255,99/255,48/255,1)     #evergreen forest
mf <- rgb(181/255,202/255,143/255,1)  #mixed forest
sh <- rgb(204/255,186/255,125/255,1)  #shrub/scrub
gr <- rgb(227/255,227/255,194/255,1)  #grassland/herbaceous
pa <- rgb(220/255,217/255,61/255,1)   #pasture/hay
ag <- rgb(171/255,112/255,40/255,1)   #cultivated crops
ww <- rgb(186/255,217/255,235/255,1)  #woody wetlands
hw <- rgb(112/255,163/255,186/255,1)  #emergent/herbaceous wetlands
#map colors defined above to particular factors (levels) w/in the data, then use this vector for the color fill
nlcd.colors <- c("Water"=wa,"Developed - Open space"=do,"Developed - Low intensity"=dl,"Developed - Medium intensity"=dm,"Developed - High intensity"=dh,
       "Barren land"=bl,"Deciduous forest"=df,"Evergreen forest"=ef,"Mixed forest"=mf,"Shrub"=sh,"Herbaceous"=gr,"Pasture"=pa,"Agriculture"=ag,
       "Woody wetland"=ww,"Herbaceous wetland"=hw)

p <- ggplot () + geom_bar(data=data,aes(x=in_out,y=perc_veg,fill=variable,order=variable,width=0.6),stat='identity')
p <- p + scale_fill_manual("Vegetation type",values=nlcd.colors,
                           labels=c('Agriculture','Barren land','Developed - High intensity','Developed - Medium intensity','Developed - Low intensity',
                                    'Developed - Open space','Evergreen forest','Deciduous forest','Mixed forest','Herbaceous','Pasture','Shrub',
                                    'Woody wetland','Herbaceous wetland','Water'))
p <- p + guides(fill=guide_legend(reverse=TRUE)) 
p <- p + ylab('Percent of location')
p <- p + theme(axis.text=element_text(color="black"), axis.ticks.x = element_blank(), axis.title.x = element_blank())
p <- p + scale_y_continuous(expand=c(0,0),limits=c(0,100)) #to remove buffer on either side of 0 and 100

产生此图...。

在此处输入图片说明

图例上带有“水”,但两个栏中没有。

有任何想法吗?

谢谢

-樱桃树

乔兰

因此,当您包括:

scale_y_continuous(expand=c(0,0),limits=c(0,100))

ggplot没有足够的空间来容纳最后一个小节。不过,这在我看来值得商de。将扩展设置为0并设置限制似乎是一件合理的事情。如果您只是这样做:

scale_y_continuous(expand=c(0,0))

您删除没有截断的填充。对我来说,这似乎是意外的结果。我还没有仔细研究过源代码,但是我认为limits边界设置太严格了。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

R ggplot2堆叠条形图通过列的值归一化

来自分类Dev

R ggplot2堆叠条形图通过列的值归一化

来自分类Dev

带有ggplot2的R中的条形图

来自分类Dev

向ggplot2 R中的堆叠条形图添加误差线-已解决

来自分类Dev

R ggplot2条形图,条形图上有圆角

来自分类Dev

R ggplot2为组平均值绘制条形图

来自分类Dev

R ggplot2:条形图内的标签,没有堆叠的geom_bar

来自分类Dev

使用行作为数据点的ggplot2堆叠条形图

来自分类Dev

ggplot2堆叠条形图堆栈的顺序与源数据不同

来自分类Dev

向R中的ggplot2中的堆叠条形图添加水平线,并在图例中显示

来自分类Dev

为什么在r ggplot2中添加构面时,堆叠条形图会发生变化

来自分类Dev

用 R ggplot2 中的百分比从头开始分类变量的堆叠条形图

来自分类Dev

R ggplot2:时间序列的条形图

来自分类Dev

ggplot2中的单个条形图,R

来自分类Dev

条形图ggplot2 R上的标签

来自分类Dev

使用ggplot2在R上分组条形图

来自分类Dev

R ggplot2条形图

来自分类Dev

使用ggplot2在R上分组的条形图

来自分类Dev

R中的2层条形图

来自分类Dev

在R中使用ggplot2进行黑白(最好带有图案)条形图

来自分类Dev

geom_bar ggplot2堆叠,成组的条形图,具有正值和负值-金字塔图

来自分类Dev

geom_bar ggplot2堆叠,成组的条形图,具有正值和负值-金字塔图

来自分类Dev

ggplot2堆叠的条形图,其中每个值都是一个组/颜色

来自分类Dev

R ggplot2条形图更改特定条形的颜色

来自分类Dev

如何使用ggplot2将图例标题,键顺序和颜色更改为R中的多堆叠条形图

来自分类Dev

堆叠条形图将变量转换为ggplot2 R中不相关变量的基于不存在的百分比

来自分类Dev

ggplot2堆叠的带引线的条形图标签

来自分类Dev

为ggplot2堆叠条形图中的每个条创建不同的色标

来自分类Dev

R条形图:堆叠条形图中未表示某些值

Related 相关文章

  1. 1

    R ggplot2堆叠条形图通过列的值归一化

  2. 2

    R ggplot2堆叠条形图通过列的值归一化

  3. 3

    带有ggplot2的R中的条形图

  4. 4

    向ggplot2 R中的堆叠条形图添加误差线-已解决

  5. 5

    R ggplot2条形图,条形图上有圆角

  6. 6

    R ggplot2为组平均值绘制条形图

  7. 7

    R ggplot2:条形图内的标签,没有堆叠的geom_bar

  8. 8

    使用行作为数据点的ggplot2堆叠条形图

  9. 9

    ggplot2堆叠条形图堆栈的顺序与源数据不同

  10. 10

    向R中的ggplot2中的堆叠条形图添加水平线,并在图例中显示

  11. 11

    为什么在r ggplot2中添加构面时,堆叠条形图会发生变化

  12. 12

    用 R ggplot2 中的百分比从头开始分类变量的堆叠条形图

  13. 13

    R ggplot2:时间序列的条形图

  14. 14

    ggplot2中的单个条形图,R

  15. 15

    条形图ggplot2 R上的标签

  16. 16

    使用ggplot2在R上分组条形图

  17. 17

    R ggplot2条形图

  18. 18

    使用ggplot2在R上分组的条形图

  19. 19

    R中的2层条形图

  20. 20

    在R中使用ggplot2进行黑白(最好带有图案)条形图

  21. 21

    geom_bar ggplot2堆叠,成组的条形图,具有正值和负值-金字塔图

  22. 22

    geom_bar ggplot2堆叠,成组的条形图,具有正值和负值-金字塔图

  23. 23

    ggplot2堆叠的条形图,其中每个值都是一个组/颜色

  24. 24

    R ggplot2条形图更改特定条形的颜色

  25. 25

    如何使用ggplot2将图例标题,键顺序和颜色更改为R中的多堆叠条形图

  26. 26

    堆叠条形图将变量转换为ggplot2 R中不相关变量的基于不存在的百分比

  27. 27

    ggplot2堆叠的带引线的条形图标签

  28. 28

    为ggplot2堆叠条形图中的每个条创建不同的色标

  29. 29

    R条形图:堆叠条形图中未表示某些值

热门标签

归档