在geom_sf(R ggplot)中的色条图例中添加逗号

在geom_sf(R ggplot)中的色条图例中添加逗号,r,ggplot2,sf,R,Ggplot2,Sf,我正在使用ggplot和geom_sf绘制地图,我想在图例中的值中添加逗号。我发现编辑颜色栏的唯一方法是通过“guides”,但是+guides(fill=guide\u colorbar(labels=“comma”))似乎没有任何作用(可能是因为“labels”不是“guides”中包含的规范)?如何获得包含数字超过1000的逗号的相同图例 获取所有数据的代码有点长,所以我希望没有reprex的人知道答案,但如果需要,我可以在中编辑它。谢谢 landingsmap <- ggplot(

我正在使用ggplot和geom_sf绘制地图,我想在图例中的值中添加逗号。我发现编辑颜色栏的唯一方法是通过“guides”,但是
+guides(fill=guide\u colorbar(labels=“comma”))
似乎没有任何作用(可能是因为“labels”不是“guides”中包含的规范)?如何获得包含数字超过1000的逗号的相同图例

获取所有数据的代码有点长,所以我希望没有reprex的人知道答案,但如果需要,我可以在中编辑它。谢谢

landingsmap <- ggplot() + 
  scale_x_continuous(limits=c(-126, -116), expand=c(0,0)) + 
  scale_y_continuous(limits=c(32, 42), expand=c(0,0)) + 
  geom_sf(data=simpleblocks, aes(colour=number_fish, fill=number_fish)) + 
  scale_colour_gradient(low="lightcoral", high="darkred", name="Number of Fish") + 
  scale_fill_gradient(low="lightcoral", high="darkred", name="Number of Fish") +
  geom_sf(data=camap, colour="black") + 
  theme(
    panel.background = element_rect(fill="skyblue4", size=0.5, linetype="solid"),
    legend.position = c(0.78, 0.5)
    ) + 
  NULL
landingsmap 

landingsmap试试这个。我将使用sf包中的一个示例

library(sf)
#> Linking to GEOS 3.6.1, GDAL 2.1.3, proj.4 4.9.3
library(ggplot2)
fname <-  system.file("shape/nc.shp", package = "sf")
nc <-  read_sf(fname)

ggplot(nc)+
  geom_sf(aes(fill = BIR79))+
  scale_fill_continuous(labels=function(x) format(x, big.mark = ",", scientific = FALSE))

是的,reprex确实总是更好。。。地图其实并不重要。此问题实际上并不需要您的大部分代码。问题是在图例中添加逗号。您还可以基于任何具有连续变量的数据帧创建示例,例如
菱形
虹膜
。。。只是一个建议。也许会有帮助。想法是在
scale\u gradient
调用中指定
labels=comma
,但是@AndS。刚刚出现的答案似乎很好
scale_fill_gradient(low="lightcoral", high="darkred", name="Number of Fish", labels=function(x) format(x, big.mark = ",", scientific = FALSE))