【问题标题】:How can I plot x axis values from a .csv file?如何从 .csv 文件中绘制 x 轴值?
【发布时间】:2013-03-18 19:15:28
【问题描述】:

我有 date1 列,其中包含一个日期行。此行包含格式为 dd/mm/yyyy 的日期

要直接绘制我正在使用的日期值:

axis(1, at=1:5, lab=c("01/01/2013" , "01/02/2013" , "01/03/2013" , 
, "01/04/2013" , , "01/05/2013"))

要从 .csv 文件中读取值,我需要类似 ? : 轴(1,at=1:5,lab=c(date1$date)) 我想我需要删除“at”参数,因为日期数是动态的。

这是完整的代码:

g_range <- range(0, date1$links)
plot(date1$links, type="o", col="blue", ylim=g_range, 
   axes=FALSE, ann=FALSE)
axis(1, at=1:5, lab=c("01/01/2013" , "01/02/2013" , "01/03/2013" , 
, "01/04/2013" , , "01/05/2013"))
box()
title(main="Additions", col.main="red", font.main=4)
axis(2, las=1, at=50*0:g_range[2])

这是正在读取的文件的格式:

value , links 
18/03/2013,100 
19/03/2013,200 
20/03/2013,300 
21/03/2013,400 
22/03/2013,500

我目前正在阅读链接列,但想更新代码以读取日期,因为现在日期值是在 r 代码本身中设置的。动态是指 .csv 文件可以包含日期和链接值的变量列表,因此在上面的示例中,有 5 个值/链接对,但可能有 6 个或 7 个或 8 个等...

【问题讨论】:

  • 为什么不使用默认坐标轴?

标签: r


【解决方案1】:

不清楚你想做什么,畏缩你没有给出一个可重复的例子,也不清楚什么是动态的。我认为,您可以使用函数axis.Date() 获取包含日期的对象并生成带有适当标签的轴。

这里是一个例子:

我创建了一些虚拟情节...

random.dates <- seq(as.Date("01/01/2013",format='%d/%m/%Y'),
                    as.Date("01/05/2013",format='%d/%m/%Y'),length.out=50)
plot(random.dates, 1:50, xaxt="n",main='pretty axes dates',type='o')

然后我将你的字符串向量强制转换为日期向量

at =as.Date(c("01/01/2013" , "01/02/2013" , "01/03/2013"  , 
              "01/04/2013" ,  "01/05/2013"),format='%d/%m/%Y')

注意在axis.Date 的调用中,参数格式与用于将字符串强制转换为日期的格式不同...

axis.Date(1,at=at,format='%d/%m/%Y')

编辑*

如何读取 csv 文件:

dat <- read.table(text='value , links 
18/03/2013,100 
19/03/2013,200 
20/03/2013,300 
21/03/2013,400 
22/03/2013,500',header=TRUE,sep=',')


dat$value <- as.Date(dat$value,format='%d/%m/%Y')

【讨论】:

  • 我已经更新了这个问题,试图更清楚。我目前正在阅读链接列,但想更新代码以读取日期,因为现在日期值是在 r 代码本身中设置的。
  • @user470184 你想读取带有日期的 csv 文件吗???我在这里错过了一些东西,你可以看到我的更新。
  • 我对如何替换线轴感到困惑(1, at=1:5, lab=c("01/01/2013" , "01/02/2013" , "01 /03/2013" , , "01/04/2013" , , "01/05/2013")) 以及从 .csv 文件中读取的日期?使用您的变量,我可以使用类似:axis(1,dat$value) 吗?
猜你喜欢
  • 1970-01-01
  • 2020-09-08
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-07-31
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多