2016-08-04 7 views
3

私のデータは、volume、occおよびstateという3つの変数で構成されています。私は、ボリュームに応じてパス&のポイントプロットをパスとポイントに異なる色で状態に応じてマークしたい。 は、ここに私のコードです:qplot()を使用したパスとポイントのプロット

qplot(occ,volume,data = data,geom=c('path','point'),color=factor(state))+scale_colour_manual(values=c("blue", "orange", "red")) 

結果はこのようなものです:

outcome1

qplot()は初期order.Becauseでポイントを接続していないようだ赤のポイントとパスは他のものと接続されていないので、他の2つの色付きポイントもあります。 私は、変数 '状態'に従ってqplot()がデータを並べ替えた後、各状態のパスを別々にプロットすると思います。 私はまた、カラーarguementせずにコードを試してみました:

qplot(occ,volume,data = data,geom=c('path','point')) 

結果はこのようなものです:

outcome2

この結果は私がしたいことを、最初のパスの順序を示しています。 私が望むのは、すべての点が最初の順序で連続的に接続されていて、結果変数が状態変数に応じて異なる色で表示されているようなものです。 私のコードはどうすればいいですか?

+0

次回質問をするためのアドバイス:ここで説明するように再現可能な例を追加http://stackoverflow.com/help/mcveこれは、他の人が答えやすいようにします。これは、StackOverflowユーザー間でも一般的な方法です。 – Alex

答えて

2

色を変数に設定すると、データもこの変数でグループ化されます。これを防ぐには、グループ属性を手動で定数に設定します。次に例を示します。

df <- data.frame(x = 1:20, 
       y = c(rnorm(10, 5, 2), rnorm(10, 5, 2)), 
       group = c(rep("a", 10), rep("b", 10))) 

ggplot(df, aes(x = x, y = y, group = 1, col = group))+ geom_path() 

qplotと同じ:

qplot(x,y,data = df,geom=c('point'),color=factor(group), group = 1) 

enter image description here

だからあなたのコードにgroup = 1を追加し、それはあなたがそれを期待するように動作します。

+0

それは動作します!あなたの驚くべき答えを本当に感謝します。 –

関連する問題