首页 > 解决方案 > 当我将注释添加到“kaggle 笔记本”中的 ggplot 时,我在图表上方得到一个巨大的空白,我该如何解决这个问题

问题描述

我在 kaggle 中运行的内核有问题,在我绘制的图上方出现了巨大的空白ggplot。我怀疑这是因为我在图中添加了注释。

当我在 R-studio 中运行它时,我没有遇到这个问题,可能我猜这个问题发生在笔记本上。我很想知道是什么原因造成的,我该如何解决这个问题?

注意:之前我在这篇文章中添加了指向我的内核的链接,在编辑这个问题后链接不可见,因此我删除了对内核链接的引用。

导致问题的代码,

 #City pickup point subset
city_p <- filter(uber,Pickup.point=='City')
#add anotations
my_text_city <- "Concern Area"
my_grob_city = grid.text(my_text_city, x=.32,  y=.91, gp=gpar(col="black", fontsize=7, fontface="bold",alpha=0.7))
#plot
(city_hourly_alldays <- ggplot(city_p,aes(x=factor(request_hour),fill=Status))+geom_bar(position = 'dodge')+facet_wrap(~request_date,nrow=5)+annotation_custom(my_grob_city))

标签: rkaggle

解决方案


您的“空白空间”实际上是您正在绘制的 grid.text:默认情况下,当您创建 grid.text 时,即使您将它分配给像您一样的变量,它仍然会被绘制。这就是为什么您在茫茫荒野中只有文本“关注区域”的原因。

draw = F您可以通过将参数添加到初始 grid.text 调用来摆脱它。

这应该给你你正在寻找的东西:

# City pickup point subset
city_p <- filter(uber,Pickup.point=='City')

# Create annotations object
my_text_city <- "Concern Area"
my_grob_city <- grid.text(my_text_city, x=.32,  y=.91,
    gp=gpar(col="black", fontsize=7, fontface="bold",alpha=0.7), 
    draw = F)

# Plot
ggplot(city_p,aes(x=factor(request_hour), fill=Status))+
    geom_bar(position = 'dodge')+
    facet_wrap(~request_date, nrow =5)+
    annotation_custom(my_grob_city)

我已经为你的笔记本创建了一个分支,以表明它不仅仅是 Jupyter 的一些时髦的东西。

希望有帮助!:)


推荐阅读