首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >带日期x轴的R ggplot2热图-删除灰色区域

带日期x轴的R ggplot2热图-删除灰色区域
EN

Stack Overflow用户
提问于 2018-03-02 04:51:17
回答 1查看 1.2K关注 0票数 1

我正在尝试显示西欧一个典型家庭的电力消耗热图,在X轴上是一年中的所有日子,在Y轴上是每天的小时数,热图显示了每天每小时以kWh为单位的用电量。到目前为止,我得到的是:Heat map Energy consumption,我的问题是缩放日期X轴,这样绘图左侧和右侧的灰色丝带就消失了。知道如何扩展(),即将数据显示限制为数字数据的最小和最大值,很难找到x轴日期的解决方案。

下面是我用来交付上述图的内容:

代码语言:javascript
运行
复制
hm.palette <- colorRampPalette(rev(brewer.pal(11, 'Spectral')), space='Lab')
heatmap_print <- ggplot(MyData, aes(y=Time, x=Day, fill=Totaal)) + 
geom_tile(aes(height=1)) +
scale_fill_gradientn(colours = hm.palette(100)) 
print(heatmap_print + 
    scale_y_continuous(name = "Hour of day", breaks = seq(0, 23, by=1), expand = c(0, 0)) + 
    scale_x_date(name = "Month of year", 
                 breaks = seq(as.Date("2009-01-15"), 
                              as.Date("2009-12-15"), 
                              by = "1 month"), date_labels ="%B"))

感谢,感谢您的任何想法。

EN

Stack Overflow用户

回答已采纳

发布于 2018-03-02 05:05:31

如果你只是想摆脱灰色,尝试一下themes(),如下所示:

代码语言:javascript
运行
复制
hm.palette <- colorRampPalette(rev(brewer.pal(11, 'Spectral')), space='Lab')
heatmap_print <- ggplot(MyData, aes(y=Time, x=Day, fill=Totaal)) + 
geom_tile(aes(height=1)) +
scale_fill_gradientn(colours = hm.palette(100)) 
print(heatmap_print + 
    scale_y_continuous(name = "Hour of day", breaks = seq(0, 23, by=1), expand = c(0, 0)) + 
    scale_x_date(name = "Month of year", 
                 breaks = seq(as.Date("2009-01-15"), 
                              as.Date("2009-12-15"), 
                              by = "1 month"), date_labels ="%B")) +
    theme(panel.background = element_blank(),
          plot.background = element_blank())

否则,您将需要考虑使用coord_cartesian(xlim = c(X, X), ylim = c(X, X))或仅使用纯xlim(X, X) + ylim(X, X)

票数 2
EN
查看全部 1 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/49058489

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档