Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >R:创建一个时间日期y变量的ggplot2条形图。

R:创建一个时间日期y变量的ggplot2条形图。
EN

Stack Overflow用户
提问于 2015-08-16 05:49:52
回答 1查看 826关注 0票数 2

我在试图创建一个非常简单的y轴上的时间变量条形图时遇到了很多困难。它使用geom_pointgeom_line绘制得很好,但是一旦我用geom_bar替换了它们,R要么崩溃,要么给我一个空白的灰色图。

我的原始数据是格式的字符串:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
day       time
1/1/2015  2:30:14
2/1/2015  15:10:40
3/1/2015  8:50:05

知道ggplot2对时间和日期类可能有点挑剔,我将变量格式化为POSIXct和date,如下所示:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
library(ggplot2); library(scales)
datetime <- data.frame(date = c("1/1/2015", "2/1/2015", "3/1/2015"), 
                   time = c("2:30:14", "15:10:40", "8:50:05"))
datetime$date <- as.Date(datetime$date, format="%m/%d/%Y")
datetime$time <- as.POSIXct(datetime$time, format="%H:%M:%S")

然后,创建一个简单的数据散点图可以很好地工作:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
ggplot(datetime, aes(date, time)) +
    geom_point() +
    xlab("Day") +
    ylab("Time") +
    scale_y_datetime(breaks = date_breaks("1 hour"), 
                     labels = date_format("%H:%M"))

但是,像我通常创建条形图一样,用geom_point()代替geom_bar(stat="identity")似乎会导致一个不断加载的过程,有时还会导致R的崩溃:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
ggplot(datetime, aes(date, time)) +
    geom_bar(stat="identity") +
    xlab("Day") +
    ylab("Time") +
    scale_y_datetime(breaks = date_breaks("1 hour"), 
                     labels = date_format("%H:%M"))

我可能误解了ggplot2的功能,所以有人能告诉我到底是怎么回事吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-08-16 06:52:38

在ggplot2中,条形图的y标度在默认情况下从零开始。或者,在日期和时间值的情况下,从起始值开始,即1/1/1970。这意味着你的酒吧长达45年(时间值R显然把今天设定为一个日期)。但在这段时间内,您强迫ggplot2使用非常精细的比例:您将间隔设置为1小时:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
scale_y_datetime(breaks = date_breaks("1 hour"),
                     labels = date_format("%H:%M"))

这可能会导致R坠毁。如果你用的只是

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
ggplot(data, aes(day, time)) +
  geom_bar(stat = "identity")

它会工作,但酒吧将是无法区分的。要使条形图区分开来,您必须更改y-限制,例如,更改为0:00到23:59:59之间的时间段。这对我来说很管用:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
ggplot(data, aes(day, time)) +
  geom_bar(stat = "identity") +
  xlab("Day") +
  ylab("Time") +
  coord_cartesian(ylim=c(as.POSIXct("0:0:0", format="%H:%M:%S"),
                         as.POSIXct("23:59:59", format="%H:%M:%S"))) +
  scale_y_datetime(breaks = date_breaks("1 hour"),
                 labels = date_format("%H:%M")) +
  scale_x_date(breaks = pretty_breaks(10))
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/32035795

复制
相关文章
Jupyter Notebook 更改主题
Customize your Jupyter Notebook Theme in 2 lines of code
莫听穿林
2022/02/16
8210
Jupyter Notebook 更改主题
更改WordPress主题全局字体
加入以下自定义CSS即可 /* 您可以在此处加入您的CSS。 点击上方的帮助图标来了解更多。 */ /*字体设定*/ *:not([class*="icon"]):not(i) { font-family: "Helvetica Neue", "Luxi Sans", "DejaVu Sans", Tahoma, "Hiragino Sans GB", "Microsoft Yahei", sans-serif !important; } /*字体阴影*/ *{text-shadow: 0
回忆大大
2021/08/09
1.2K0
更改WordPress主题全局字体
pycharm 风格_python主题更改
下载好的插件是一个zip文件,在pycharm的Plugins栏中选择install plugins from disk,选择插件后重启即可
全栈程序员站长
2022/09/27
7690
pycharm 风格_python主题更改
WordPress 3.4 发布:自定义主题变得更加容易
WordPress 发布了 3.4 版本,这个版本显著改善了 WordPress 的主题定制功能,自定义头部,以及图片标题等方面。
Denis
2023/04/14
2560
WordPress 3.4 发布:自定义主题变得更加容易
wordpress子比主题更改首页样式全宽度[美化教程]
在主题目录下“func.php”下面添加下面代码,这是我修改后的“图文封面卡片”小工具
七辰
2023/10/06
1.7K0
wordpress子比主题更改首页样式全宽度[美化教程]
更改Linux终端颜色主题【Linux-Command line】
如果你一整天都盯着终端,自然想让它变得赏心悦目。 对美的判断因人而异,自CRT串行控制台问世以来,终端已经走了很长一段路。 因此,很有可能你的软件终端窗口中有很多选项可以使你看到的内容主题化,不管你如何定义美。
QRosie
2019/11/24
9K0
更改Linux终端颜色主题【Linux-Command line】
gnome extensions 推荐 (fedora 28 常用gnome 插件备份)
当我们进行重新安装系统(fedora 28)的时候,需要初始安装一些 gnome 插件,来进行完善我们的使用。
西湖醋鱼
2020/12/30
3.8K0
安装Gnome桌面
sudo add-apt-repository ppa:tualatrix/ppa sudo apt-get install -f gnome-panel gnome gnome-shell gnome-menus gnome-session gdm
JNingWei
2018/09/28
4.4K0
【Matlab】MATLAB编辑器主题颜色更改(MATLAB Schemer)
MATLAB是一款好用的代码编辑器,但其默认的主题背景色是“刺眼的白色”,对于经常使用MATLAB工作的童鞋来说很不友好。其他的代码编辑器如VS Code、Pycharm都有黑色背景主题设置。
DevFrank
2024/07/24
1.2K0
【Matlab】MATLAB编辑器主题颜色更改(MATLAB Schemer)
ubuntu 手工安装gnome extensions
首先查看gnome shell 的version gnome-shell --version GNOME Shell 3.28.4 下载对应的版本。 查看这个扩展的uuid: unzip -c ./openweather-extension@jenslody.de.v94.shell-extension.zip metadata.json | grep uuid | cut -d \" -f4 # openweather-extension@jenslody.de 进入目录安装扩展 mkdir -p ~/.
超级大猪
2019/12/20
2.4K0
技术|使用 Ansible 管理你的工作站:配置桌面设置
在本系列第三篇(也是最后一篇)文章中,我们将使用Ansible自动化配置GNOME桌面设置。
知忆
2021/07/06
8390
使用 Ansible 管理你的工作站:配置桌面设置
在本系列第三篇(也是最后一篇)文章中,我们将使用 Ansible 自动化配置 GNOME 桌面设置。
星哥玩云
2022/07/28
5760
Ubuntu14.04 gnome3下gedit首选项消失如何修改gedit主题
该文章介绍了在Ubuntu 14.04下使用gnome3遇到的问题以及解决方案。主要包括忘记选择引导设备导致硬盘被格式化的问题,以及使用easyBCD设置启动项进入Ubuntu后出现Grub error: unknown filesystem的问题。文章还介绍了如何手动更改引导文件,以及更改主题和显示行号的方法。
Alan Lee
2018/01/02
2K0
Ubuntu14.04 gnome3下gedit首选项消失如何修改gedit主题
这款Typora主题惊艳到了我
typora相信大家都用过,很多人习惯了typora默认的github主题,但我今天看到一个主题。说实话激起了我要设计自己的一款主题的欲望。就有了今天的这个主题。
徐建国
2021/12/22
1.4K0
这款Typora主题惊艳到了我
博客园美化,更改外部主题,自定义JavaScript
在之前,我一直以为博客园他是那种万年不变的老旧风格,看着就有一种年代感,但是,昨天我莫名看到一个项目,我尝试进行了美化后,发现这玩意很好看啊。
JanYork_简昀
2022/05/18
1.2K0
博客园美化,更改外部主题,自定义JavaScript
扶我起来,前端还没倒下,我不能睡
长路漫漫,唯夜作伴。虽然一天的工作头昏脑胀,但是仍然放不下我心心念念的前端啊,扶我起来,我还可以学~
小闫同学啊
2019/12/17
8300
使用GNOME Tweaks工具定制Linux桌面的10种方法
您可以通过多种方法来调整Ubuntu,以自定义其外观和行为。 我发现最简单的方法是使用GNOME Tweaks Tool(GNOME优化工具)。 它也被称为GNOME调整或简单的调整。GNOME Tweaks 是可以调整 GNOME 的高级选项。
知忆
2021/06/09
4.9K0
Qt设置窗口不能更改大小及程序发布相关
参考:http://blog.sina.com.cn/s/blog_5e42f31a0100y760.html
繁花云
2018/07/31
1.3K0
Qt设置窗口不能更改大小及程序发布相关
WSL安装GNOME桌面教程
下载 VcXsrv Windows X Server download | SourceForge.net 并安装
小N同学
2023/03/16
4.6K0
WSL安装GNOME桌面教程
3.4 队列
1、和栈相反,队列是一种先进先出(FIFO)的线性表。它只允许在表的一端进行插入,而在另一端删除元素。
小林C语言
2019/07/12
2940

相似问题

如何删除Ubuntu 12.04中的gnome 3.4主题

30

我想从toreturn 12.04的gnome 3.6返回gnome 3.4

10

如何手动更改GNOME主题?

10

Gnome shell主题自动更改

10

Gnome-Shell 3.4主题在12.04中不起作用?

30
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文