- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试绘制从 2015 年 4 月 7 日开始到 2015 年 11 月 23 日结束的每隔 15 分钟从溪流中收集的水温。我想让 x 轴在每个刻度标记处都有标签,如“Apr”、“May”等到“Nov”。我写的代码看起来不错,但温度读数与 x 轴刻度线不对齐;它们从 2015 年 4 月 1 日开始,而不是 2015 年 4 月 7 日;因此,所有温度读数都比应有的偏移了 7 天。换句话说,我希望 x 轴从 4 月 1 日开始,但数据从收集它们的日期开始。我认为这与我如何对时间进行排序和应用刻度有关,但我不确定如何纠正它。任何帮助将不胜感激。谢谢
#Load Data
trib<-read.csv("C:\\r.data\\trib.csv",header=TRUE)
#Index Time
trib$DateTime<-as.POSIXct(strptime(trib$DateTime,"%m/%d/%Y %H:%M"))
#Create Time Series
trib.xts<-xts(trib,order.by=trib$DateTime)
#Example Data
DateTime Temp
22666 2015-04-07 13:30:00 NA
22667 2015-04-07 13:45:00 2.983
22668 2015-04-07 14:00:00 3.142
22669 2015-04-07 14:15:00 3.274
22670 2015-04-07 14:30:00 3.354
22671 2015-04-07 14:45:00 3.433
22672 2015-04-07 15:00:00 3.485
22673 2015-04-07 15:15:00 3.670
22674 2015-04-07 15:30:00 3.749
22675 2015-04-07 15:45:00 3.827
#Plot
par(mfrow=c(1,1))
margins <- par(mar=c(2,2,1,1)+0.1)
omargins <- par(oma=c(2,2,0.5,0.5)+0.1)
Temp.lab=seq(0,30,by=5)
Temp.ticks=seq(0,30,by=5)
plot(trib.xts$Temp,axes=FALSE,auto.grid=FALSE,col="gray",ylim=c(0,30),main="Stream Name",cex.main=0.8,lwd=1)
axis(2,at=Temp.ticks,labels=format(Temp.lab,scientific=FALSE),ylab="Temperature (C)",las=1,cex.axis=0.8)
times <- time(trib.xts$DateTime["2015-04-01/2015-11-15"])
ticksm <- seq(times[1], times[length(times)], by = "months")
month.lab = c("Apr","May","Jun","Jul","Aug","Sep","Oct","Nov")
axis(1, at = ticksm, labels = month.lab, tcl = -0.5,cex.axis=0.8,xlab="Month")
mtext("Temperature (°C)",side=2,line=3,las=3,cex=0.8)
mtext("Month",side=1,line=3,cex=0.8)
最佳答案
这是一种方法,假设您不介意 ggplot 解决方案。
# Let's first make SampleData to your specifications:
trib.xts <- data.frame(DateTime = seq.POSIXt(as.POSIXct("2015/04/07 13:30:00",Format="%Y/%m/%d %H:%M:%S", timezone ="CEST"),
as.POSIXct("2015/11/23 13:00:00",Format="%Y/%m/%d %H:%M:%S", timezone ="CEST"),
by="15 min"))
# Then add temperature, a bit warmer in summer.
trib.xts$Temp <- 2*sin(month(trib.xts$DateTime))+rnorm(22083,mean=7,sd=2)
#Now, we need ggplot and scales
library(ggplot2)
library(scales)
#then make a plot
(plot1 <- ggplot(trib.xts, aes(x=DateTime, y=Temp)) +
geom_point(col="gray",shape=1) +
theme_bw(24) +
ggtitle("Stream Name") +
ylab("Temperature (°C)") +
xlab("Month"))
# Now set the breaks, labels and x-limits as you please
(plot1 <- plot1 +
scale_x_datetime(breaks = "1 month",
labels=date_format("%b"),
limits = as.POSIXct(c("2015-03-30","2015-11-25"), timezone="CEST")))
关于r - 时间序列中的日期与 X 轴不对齐,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34374580/
我正在阅读 Python 文档以真正深入了解 Python 语言,并遇到了 filter 和 map 函数。我以前使用过过滤器,但从未使用过映射,尽管我在 SO 上的各种 Python 问题中都见过这
当我尝试打印 BST 的级别顺序时,这个问题提示了我。 这是一个 Pre-Order Sequence: 4, 1, 2, 3, 5, 6, 7, 8 In_order Sequence : 1, 2
我的代码在 main(序列测试;)的第一行出现错误,指出它是对 sequence::sequence() 的 undefined reference 。我无法更改 main 中的代码。有谁知道我该如何
这可能很简单,但我在通常的 latex 指南中找不到任何相关内容。在这句话中: {\em hello\/} “\/”的目的是什么? 最佳答案 这就是所谓的斜体校正。其目的是确保斜体文本后有适当的间距。
当我从 Postgresql 表中删除所有记录,然后尝试重置序列以在插入时开始一个编号为 1 的新记录时,我得到不同的结果: SELECT setval('tblname_id_seq', (SELE
在版本10.0.3中,MariaDB引入了一种称为序列的存储引擎。 其ad hoc为操作生成整数序列,然后终止。 该序列包含正整数,以降序或升序排列,并使用起始,结束和递增值。 它不允许在多个查询中
如何在 Groovy 中获取给定数字的序列,例如: def number = 169 // need a method in groovy to find the consecutive number
基本上,如果这是 .NET,它看起来像这样: ISomething { string A { get; } int B { get; } } var somethings = new List
说以下代码部分(同一块): A <= 1 A <= 2 变量 A 总是被赋值为 2 吗?还是会出现竞争条件并分配 1 或 2? 我对非阻塞赋值的理解是,由硬件在 future 分配变量 A,因此它可能
在运行 WiX 设置时,我正在寻找操作列表及其顺序。不知何故,官方网站似乎没有提供任何信息。 基本问题是我想正确安排我的自定义操作。通常我需要使用 regsvr32.exe 注册一个 DLL,而这只能
F#初学者在这里 我想创建一个类型,它是具有至少一个元素的另一种具体类型(事件)的序列。任何其他元素都可以在以后随时添加。通常在 C# 中,我会创建一个具有私有(private) List 和公共(p
作为构建过程和不断发展的数据库的一部分,我试图创建一个脚本,该脚本将删除用户的所有表和序列。我不想重新创建用户,因为这将需要比所允许的更多的权限。 我的脚本创建了一个过程来删除表/序列,执行该过程,然
我想恢复两个向量的第一个日期和相同向量的第二个日期之间的日期序列,.... 这是一个例子: dates1 = as.Date(c('2015-10-01', '2015-03-27', '2015-0
这个问题已经有答案了: sql ORDER BY multiple values in specific order? (12 个回答) 已关闭 9 年前。 我有一个 sql 语句,我想要ORDER
我想恢复两个向量的第一个日期和相同向量的第二个日期之间的日期序列,.... 这是一个例子: dates1 = as.Date(c('2015-10-01', '2015-03-27', '2015-0
在用java编写代码时,我需要用“],[”分割字符串。下面是我的代码。 try (BufferedReader reader = new BufferedReader(new InputStreamR
这个问题已经有答案了: Project Euler Question 14 (Collatz Problem) (8 个回答) 已关闭 9 年前。 我正在尝试查找数字的 Collatz 序列。以下
我有一个例程函数process_letter_location(const char& c, string &word)。 在我的 main 中,我声明了一系列字符串变量,如下所示: string s
我需要找到最长的多米诺骨牌链,给定一组 12 个随机挑选的多米诺骨牌。我已经递归地生成了多米诺骨牌的所有可能性(使用 0 到 12 的面值有 91 种可能性)。多米诺骨牌由一 block “砖 blo
我有这个数据结构 Seq,它继承了类 vector 但有一些额外的功能。使用这个数据结构 Seq 我有这个预定义的数据结构: typedef Seq > MxInt2d; 我现在想要一个包含多个 Mx
我是一名优秀的程序员,十分优秀!