我正在尝试制作一个图表,比较一个变量中的值/观察值。然后,我想根据它们的名称标记各个条形,并作为另一个变量存储在数据集中。我已经尝试过geom_bar,但似乎无法正常工作。
这是我的数据头
head(Patient11GeneExpressionProfile)
Gene ddCt value Fold Change
1 AIM2 -1.71470924 3.2823049
2 BCL2 1.13099363 0.4566011
3 BCL2L1 -0.40271320 1.3219918
4 BIRC2 0.07520729 0.9492057
5 BIRC3 1.46106210 0.3632256
6 CARD18 NA NA
我已经尝试过了,但是没有用
ggplot(Patient5GeneExpressionProfile, aes( x = 'Fold Change')) + geom_bar()
谢谢!
答案 0 :(得分:2)
使用您的示例:
Patient11GeneExpressionProfile = structure(list(Gene = structure(1:6, .Label = c("AIM2", "BCL2",
"BCL2L1", "BIRC2", "BIRC3", "CARD18"), class = "factor"), `ddCt value` = c(-1.71470924,
1.13099363, -0.4027132, 0.07520729, 1.4610621, NA), `Fold Change` = c(3.2823049,
0.4566011, 1.3219918, 0.9492057, 0.3632256, NA)), class = "data.frame", row.names = c("1",
"2", "3", "4", "5", "6"))
我猜测是“比较一个变量内的值/观察值”,您的意思是比较每个基因的Fold Change
。您首先需要长时间轮换数据,如果没有很多基因,则需要
library(tidyr)
library(ggplot2)
pivot_longer(Patient11GeneExpressionProfile,-Gene)
# A tibble: 12 x 3
Gene name value
<fct> <chr> <dbl>
1 AIM2 ddCt value -1.71
2 AIM2 Fold Change 3.28
3 BCL2 ddCt value 1.13
4 BCL2 Fold Change 0.457
5 BCL2L1 ddCt value -0.403
6 BCL2L1 Fold Change 1.32
7 BIRC2 ddCt value 0.0752
8 BIRC2 Fold Change 0.949
我们将其直接传递给ggplot:
ggplot(pivot_longer(Patient11GeneExpressionProfile,-Gene),
aes(x=Gene,y=value,fill=name)) +
geom_bar(stat="identity",position="dodge")
答案 1 :(得分:1)
我认为您希望条形的高度(按SignUpEvents
)与using System.Windows.Forms;
中的值匹配。如果这是您想要的,则将需要Gene
和Fold_Change
美观。添加x
作为图层,它将免费标记您的列。请注意,y
使用geom_col()
,因此数据保持不变。如果您偏爱geom_col()
,请添加stat_identity()
作为图层。两者都应给您相同的结果。试试看:
geom_bar()