当我在一个' kaggle的笔记本中添加Anotation到ggplot时#39;我在图表上面有一个巨大的空白,我该如何修复

时间:2018-06-04 15:48:37

标签: r kaggle

我在使用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))

1 个答案:

答案 0 :(得分:0)

你的“空白空间”实际上是你绘制的grid.text:默认情况下,当你创建grid.text时,即使你将它分配给一个像你这样的变量,它仍然被绘制。这就是为什么你在不知名的地方只有“关注区域”的文本。

你可以通过在你的初始grid.text调用中添加参数draw = F来摆脱它。

这可以为您提供所需的信息:

# 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)

created a fork of your notebook表明这不仅仅是Jupyter的一些时髦。

希望有所帮助! :)