2016-07-21 13 views
4

私はggplotを使ってプロットを使ってRShinyアプリケーションを作成しました。R:既存のプロットに平均線を追加する

ここで、既存のプロットに平均線を追加します。

geom_line(aes(y = moyenne[,2], colour = "blue")) 

か::

library(ggplot2) 

A <- c(1:10) 
B <- c(1,1,2,2,3,3,4,4,5,5) 

donnees <- data.frame(A,B) 
datetime<-donnees[,2] 
Indcatotvalue<-donnees[,1] 
df<-donnees 

mn<-tapply(donnees[,1],donnees[,2],mean) 
moyenne <- data.frame(template=names(mn),mean=mn) 

ggplot(data=df, 
    aes_q(x=datetime, 
     y=Indcatotvalue)) + geom_line() 

は、私が追加しようとしてい

lines(moyenne[,1],moyenne[,2],col="blue") 

を何も起こりません:( は私が機能するために、特に "行" を理解していない

ありがとうございました...

+0

ようこそ。 [Rで最小限の再現可能な例を提供する方法](http://stackoverflow.com/questions/5963269/how-to-make-a-great-r-reproducible-example#answer-5963610)をお読みください。それに応じて編集して改善してください。良いポストは、通常、最小限の入力データ、必要な出力、試行されたもの、つまりコピー・ペースト・ランの準備ができています。あなたのコードを実行すると、私は "オブジェクトdonnees"が見つかりません "取得します。データ+必要なライブラリなどを提供してください。また、私はここで光沢のあるコンテキストが必要とは思わない(「最小限の例」)。 – lukeA

+0

RまたはShinyの中でggplotを使用するかどうかは関係ありません。 Googleではこれを 'ggplot'と' line'を使い、あなたはhttp://www.sthda.com/english/wiki/ggplot2-add-straight-lines-to-a-plot-horizo​​ntal-vertical- – Jimbou

答えて

3

平均的な線を言うとき、私はY(Indcatotvalue)の平均値を表す線をプロットすると仮定しています。そのためにあなたは、グラフ上の水平線プロットgeom_hline()使用したい:

enter image description here

+0

お返事ありがとう@サイモン。実際、この例ではすべての平均点(1.5,3.5,5.5,7.5,9.5)を表す線が必要です。ペアは(x、y)の場合、((1,1)、(2,3.5)、(3,5.5)、(4,7.5)、(5,9.5))で表されます。 – Flo

+0

このソリューションを使用しても動作していない場合は、次のコードを使用してください: 'ggplot(data = df、aes_q(x = datetime、y = Indcatotvalue))+ geom_line()+ geom_hline(aes(yintercept = mean(Indcatotvalue)) 、color = "blue") ' – Kots

0

:あなたが与えた例の番号で、

ggplot(data=df,aes_q(x=datetime,y=Indcatotvalue)) + geom_line() + geom_hline(yintercept = mean(Indcatotvalue), color="blue") 

どちらが、あなたにこのようになりますプロットを与えます私はこのページで答えを見つけた:

groups.google.com/forum/#!topic/ggplot2/vd5n1jR9k40

機能stat_summ Aryはここで完璧です。

関連する問題