2017-01-13 7 views
0

次のようにIは、データフレームを有する:積み上げ棒グラフ定量1つずつカテゴリ変数

core_depth formation_name 
5668   name5 
5739   name2 
5791   name7 
5841   name4 
5856   name1 
5876   name3 
5882   name6 

core_depth列がロックの深さを表し、formation_nameは地質学者によって岩盤に与えられた名称であります。データを保護するために名前をスクランブルしましたが、Rの文字ベクタのように一意の名前であるという考えがあります。

垂直尺度のみが重要な1列積み上げ棒グラフを描画する必要があります。最初のcore_depth(5668)から始まり、底部のコア深度(5882)で終わります。棒グラフの各スタックには、名前に対応する深さの「割合」が表示されます。スタックされたバー自体が他の散布図の奥行きと形成マーカーとして機能するので、私は伝説は必要ありません。私はggplot2かplotlyのどちらかを使うことができます。サンプルコードを教えてください。

答えて

0

は、このヘルプを行います。

df <- read.table(text = "core_depth formation_name 
       5668   name5 
       5739   name2 
       5791   name7 
       5841   name4 
       5856   name1 
       5876   name3 
       5882   name6", stringsAsFactors = FALSE, header = TRUE) 

library(dplyr) 
library(ggplot2) 

df <- df %>% 
    arrange(core_depth) 

df$lag <- lag(df$core_depth) 

df$abs <- df$core_depth - df$lag 
df$abs[1] <- 0 

ggplot(df) + 
    geom_bar(aes(x = rep(0, nrow(df)), 
       y = abs, 
       fill = formation_name), 
      stat = "identity") 

enter image description here

+0

それは私が必要なものはほとんどですが、私はすなわち、第一のコア深度値を先頭に開始するようにY軸のスケールをしたいと思い、5668最後のコア深度に達するまで、すなわち5882に下がる。私は実際には削除または隠すことができるX軸は気にしない。そうでなければ、それは良いです。 – Bharat

関連する問題