我想做的事
我的資料集包含幾個案例 ( ),對于給定數量的重復測量 ( ) id,具有不同的結果 ( )。每個回圈應計為 1 ( ) 或以相等的長度可視化。我想要結束的圖是一個堆積條形圖,其中每個案例的每個周期都具有相同的長度。回圈的順序必須是連續的。結果的順序取決于相應的周期。outcomecycleval
我的問題
下面的示例代碼生成了一個總結周期的條形圖(盡管是一個因素)。但是,使用val列而不是cycle混淆結果的順序,這不能改變。
# setup
library(ggplot2)
library(dplyr)
set.seed(0)
# test data
data.frame(
cycle=factor(rep(1:8,2),levels=1:8),
val=1,
id=factor(rep(1:2,each=8)),
outcome=factor(paste("Outcome",sample(1:8,16,T)),levels=paste("Outcome",1:8))) %>%
# plot
ggplot(.,aes(id,cycle,fill=outcome))
geom_bar(stat="identity",position=position_stack(reverse=T),width=0.99)
coord_flip()
我的問題
是否可以將每個 id 的周期數計為 1,同時保持結果順序?
先感謝您!
情節
這是我在使用上面的代碼時得到的:

這就是我得到的,當使用val而不是cycle:

目標是保持結果序列,同時將每個回圈計數為 1 或使每個 id 的長度相同。
uj5u.com熱心網友回復:
據我所知,您可以使用以下方法實作您想要的結果geom_tile:
library(ggplot2)
set.seed(0)
dat <- data.frame(
cycle = factor(rep(1:8, 2), levels = 1:8),
val = 1,
id = factor(rep(1:2, each = 8)),
outcome = factor(paste("Outcome", sample(1:8, 16, T)), levels = paste("Outcome", 1:8))
)
ggplot(dat, aes(cycle, id, fill = outcome))
geom_tile()

轉載請註明出處,本文鏈接:https://www.uj5u.com/net/525495.html
標籤:rggplot2
上一篇:回圈通過R中的過濾器呼叫
