2017-09-15 4 views
0

私はこのようなデータフレームを持っている:スキャッタロットのx軸上でより良い日付ブレークを取得するにはどうすればよいですか?

Days  Ahm5 
01/06/1961 0.00000 
02/06/1961 0.19266 
03/06/1961 1.67610 
........ ........ 
30/09/1961 5.26514 
01/06/1962 0.05200 
......... ........ 
30/09/2007 0.866473 

は、ここでのデータです:私のような散布図をしようとするとhttps://www.dropbox.com/s/de88gqk7kvb1q9i/data.csv?dl=0

data <- read.csv("data.csv") 
data[data==-9.99e+08] = NA      
data$days <- as.Date(data$days, format="%d/%m/%Y") 
plot(Ahm5~days,data, col='blueviolet', type="p", pch=1 ,cex=.5, xlab="Year",xaxt='n', ylab="Rainfall(mm/Day)") 
axis.Date(side=1,seq(as.Date("1961/1/1"), by = "year", length.out = 47)) 

出力は次のようなものです。 enter image description here

しかし、私の所望の出力は、データのように1960年から2007年までx軸スパンで下記の図のようにする必要があります:

enter image description here また、x軸上で、昨年に追加する方法?この些細な質問のためにすみません。

+0

は[再現例]を含めてください(HTTP:/ /stackoverflow.com/questions/5963269/how-to-make-a-great-r-reproducible-example/5963610)。これにより、他の人があなたを助けやすくなります。 – Jaap

+0

データとコードを編集して使用しました。 – ajilesh

答えて

2

プロットが十分広いことを確認する必要があります。そうでない場合は、いくつかの区切りが省略されます。その違いを確認するには、以下の例を参照してください。

例1:

png(filename = 'scatterplot1.png', width = 800, height = 400) 
plot(Ahm5 ~ days, dat, col = 'blueviolet', type = "p", pch = 1, cex=.5, xlab = "Year", xaxt='n', ylab = "Rainfall (mm/Day)") 
axis.Date(side = 1, at = seq(as.Date("1961/1/1"), by = "year", length.out = 47)) 
dev.off() 

を与える:

enter image description here

例2:

png(filename = 'scatterplot2.png', width = 600, height = 300) 
plot(Ahm5 ~ days, dat, col = 'blueviolet', type = "p", pch = 1, cex=.5, xlab = "Year", xaxt='n', ylab = "Rainfall (mm/Day)") 
axis.Date(side = 1, at = seq(as.Date("1961/1/1"), by = "year", length.out = 47)) 
dev.off() 

が与える:

enter image description here

例3:

png(filename = 'scatterplot3.png', width = 400, height = 200) 
plot(Ahm5 ~ days, dat, col = 'blueviolet', type = "p", pch = 1, cex=.5, xlab = "Year", xaxt='n', ylab = "Rainfall (mm/Day)") 
axis.Date(side = 1, at = seq(as.Date("1961/1/1"), by = "year", length.out = 47)) 
dev.off() 

が与える:

enter image description here

あなたが休憩をプロットし、Rを使用する壊れた選ぶ間で異なる見ることができるように。よりよい休憩を持つためには、使用することができます:

png(filename = 'scatterplot4.png', width = 800, height = 400) 
plot(Ahm5 ~ days, dat, col = 'blueviolet', type = "p", pch = 1, cex=.5, xlab = "Year", xaxt='n', ylab = "Rainfall (mm/Day)") 
axis.Date(side = 1, at = seq(as.Date("1965/8/1"), by = "5 year", length.out = 9)) 
dev.off() 

与える:今

enter image description here

はあなたが持っている:

  • ティックが真ん中に並んでいる

    • 立派休憩年間の「散布杭」の

    UPDATE:最後の例でさらに詳述する:与える

    png(filename = 'scatterplot5.png', width = 800, height = 400) 
    plot(Ahm5 ~ days, dat, col = 'blueviolet', type = "p", pch = 1, cex=.5, 
        xlab = "Year", xaxt='n', ylab = "Rainfall (mm/Day)") 
    axis.Date(side = 1, 
          at = c(seq(as.Date("1960/8/1"), by = "10 year", length.out = 5), 
           as.Date('2007-08-01'))) 
    dev.off() 
    

    enter image description here

  • +0

    返信いただきありがとうございます。しかし私は何を探していたのかを明確にするために私の質問を編集しました。 – ajilesh

    +0

    @ajileshアップデートをご覧ください。それはあなたが探しているものですか? – Jaap

    +0

    私が質問で与えた2つのプロットを見てください。私は1年の日付が積み重なってほしくない。 – ajilesh

    関連する問題