2017-03-02 4 views
0

私は、一連の動物が時間の経過とともに変化する行動状態に関するデータを持っています。それは次のようになります:カテゴリの状態を時間の関数としてプロットする

state<-ceiling(runif(1000, 0, 3)) 
time<-ceiling(runif(1000,0,24)) 
ID<-ceiling(runif(1000,1,20)) 
df<-cbind(state,time,ID) 

私はこれを視覚化する最良の方法としてはうんざりしており、いくつかのアドバイスを期待していました。ヒートマップが機能するかもしれませんが、これをコード化する方法がわかりません。口頭で言えば、各状態は異なる色を持ち、色の強さは与えられた時間にどのくらいの頻度で発生したかによって変化します。私はここでタイムクラスとして時間を維持することが不可欠だとは思わない。

あなたは

これはアイデアで取得しますが、ポイントは、このようなheatmap-like plot, but for categorical variables

+0

あなたはこのhttps://joey711.github.io/phyloseq/plot_heatmapを確認する必要があります。ここ

enter image description here

コードです-examples.html – Enthusiast

答えて

2

何かほとんどのデータを持っているのは意味がありません役立つことを願って?もちろん、色を変更すること自由に感じ、その他もろもろ:

df %>% 
    as.data.frame() %>% 
    group_by(state, time) %>% 
    summarise(n = n()) %>% 
    ggplot(aes(time, y = factor(state), fill = n)) + 
    geom_raster() + 
    scale_fill_continuous('Count', low = 'yellow', high = 'darkgreen', guide = 'legend') + 
    scale_x_continuous(expand = c(0, 0), breaks = c(1,seq(0, 25, 5), 24)) + 
    ylab('State') + 
    xlab('Time') + 
    coord_fixed() + 
    theme(legend.position = 'top', 
      legend.key.height = unit(.2, 'cm')) 
+0

こんにちは、それは素晴らしいですし、私の実際のデータで完全に動作します。どうもありがとう。私は、3つの州に異なる色を割り当てることが可能かどうか疑問に思っていましたか? –

+1

これは興味深い質問です。答えを探してみたいです!私はあなたが新しい質問としてそれを開くことをお勧めします、 – GGamba

関連する問題