1

日付行を含む 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 ファイルから値を読み取るには、次のようなものが必要です。: axis(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 などがある可能性があります。

4

1 に答える 1

0

何をしたいのか、再現可能な例を挙げていないのか、そして何が動的であるのかが明確ではありません。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')
于 2013-03-18T19:39:36.173 に答える