2016-11-16 16 views
0

私は3ヶ所のデータに対して年平均をプロットしようとしています。私はplot()関数を定期的に使用していましたが、以前はこのような問題はありませんでした。何らかの理由で、このデータをプロットするたびに、最初の場所データに階段状のスタイルが追加されます。私は "可能なすべての代替"に "タイプ="を変更しようとしており、それを無視するようです。また、type = "n"を設定してからpoints()でデータを追加しようとしましたが、データの最初のセットにステップ状のスタイルがまだ残っています。R:データに階段関数を追加するプロット関数

ここで私が使用しているデータセットされています

OrganicsRemoval <- data.frame(Year = c("1995", "1996", "1997", "1998", "1999", "2000", "2001", "2002", "2003", "2004", 
            "2005", "2006", "2007", "2008", "2009", "2010", "2011", "2012", "2013", "2014", 
            "2015", "2016"), 
          x = c(22,28,20,30,34,31,33,45,42,43,38,50,47,50,50,47,46,44,48,55,57,50), 
          y = c(18,23,25,16,23,24,24,31,36,39,36,42,39,40,42,46,40,42,40,42,44,42), 
          z = c(15,21,22,16,36,33,31,39,38,39,39,46,42,46,45,43,43,44,42,44,45,41)) 

ここでは、私はデータをプロットするために使用していたコードである:ここでは

par(mfrow = c(1,1)) 
plot(x = OrganicsRemoval$Year, y = OrganicsRemoval$x, type = "n", main = "TOC Percent Removal", 
ylab = "TOC Percent Removal", xlab = "Year", ylim = c(0,65)) 
points(x = OrganicsRemoval$Year, y = OrganicsRemoval$x, type = "b", col = "red") 
points(x = OrganicsRemoval$Year, y = OrganicsRemoval$z, type = "b", col = "blue") 
points(x = OrganicsRemoval$Year, y = OrganicsRemoval$y, type = "b", col = "black") 
legend("topright", legend = c("x", "z", "y"), col = c("red", "blue", "black"), lwd = 1) 

は、出力は何かということです: Output Plot

私はこれらの階段状のフォーマットを取り除くために得られる助けに感謝します。ありがとう!

答えて

1

OrganicsRemoval$Yearを数値としてキャストすると、プロットが正しく表示されます。

データフレームを作成し、stringsAsFactors = FALSEを使用しない場合は、stringがfactorになります。私はこれがトラブルを引き起こしたと仮定します。 '階段状'のものは、数値としてキャストしていないときに初期のプロットステートメントに既に表示されています。また

plot(x = as.numeric(OrganicsRemoval$Year), y = OrganicsRemoval$x, type = "n", main = "TOC Percent Removal", 
ylab = "TOC Percent Removal", xlab = "Year", ylim = c(0,65)) 

points(x = OrganicsRemoval$Year, y = OrganicsRemoval$x, type = "b", col = "red") 
points(x = OrganicsRemoval$Year, y = OrganicsRemoval$z, type = "b", col = "blue") 
points(x = OrganicsRemoval$Year, y = OrganicsRemoval$y, type = "b", col = "black") 
legend("topright", legend = c("x", "z", "y"), col = c("red", "blue", "black"), lwd = 1) 

enter image description here

あなたがデータフレームを作成するとき、あなたは、前述したように、stringsAsFactors = FALSEを使用することができます。

+1

ありがとうございました、今は動作しています! – tbradley

関連する問題