我想根据时间实时绘制一些数据。
我使用的代码与此非常相似,取自我在此处读到的另一个答案:
$ionicScrollDelegate.getScrollPosition().top;
我想在图表的x轴上绘制时间。所以我这样做了:
$ionicScrollDelegate.$getByHandle("scrollHandler").getScrollPosition().top;
但我得到错误,你们中有人有任何帮助/建议
非常感谢,
本
修改
我想让它以固定的频率运行900次。我可以在for循环之前计算时间值吗? e.g。
df $ DateTime [1] = Sys.time()
有关(;;)
df $ DateTime [i] = df $ DateTime [i] + X秒
结束循环
有关(;;) ////模拟真人密谋? 结束循环
答案 0 :(得分:2)
要绘制时间,您需要一个时间对象。我修改了你的代码,实际上有一个时间向量。此外,我更改了索引向量的方式以摆脱xlim
。
n=1000
df=data.frame(time=Sys.time()+1:n,y=runif(n))
window=100
for(i in 1:(n-window))
{
flush.console()
df1 <-df[i:(i+window),]
plot(df1$time,df1$y,type='l')
Sys.sleep(0.1)
}
编辑添加小时数的解决方案。你可以增加几个小时但似乎会减慢这个过程。正如您所看到的,我添加了axis.POSIXct
调用,但我不得不将Sys.Sleep
减速到0.5,您几乎看不到x轴:
n=1000
df=data.frame(time=Sys.time()+1:n,y=runif(n))
window=100
for(i in 1:(n-window))
{
flush.console()
df1 <-df[i:(i+window),]
x_at <-pretty(df1$time)
x_labels <-format(pretty(df1$time),"%H:%M:%S")
plot(df1$time,df1$y,type='l',xaxt='n')
axis.POSIXct(side=1,at=x_at,labels=x_labels)
Sys.sleep(0.5)
}