在 R 中绘制 bar/colum 图
Plotting a bar/colum plot in R
我正在尝试以下绘图。
我有这个数据集:
Pathway Value Col.Code
AKTSig 1 r
HRAS 2 r
Lbind 3 h
GPCRact 4 r
ACHsig 5 h
ACEest -2 r
MRNAspl -3 h
Notch -4 h
Delta -5 r
Sonic -6 r
我想绘制一个图表,其中这些列具有沿 x 轴的路径,值在 y 轴上,并且列由 Col.Code 列着色。我已经从 ggplot2 尝试了 geom_col() 但这总是将列重新排列成随机顺序,即不是最高值到最负值。我也尝试过 geom_bar() 但这会为路径创建计数并且不会绘制我上面描述的内容。
你可以使用这个:
library(dplyr)
ggplot(data,aes(x=reorder(Pathway,-Value),y=Value,fill=Col.Code))+geom_bar(stat='identity')
另一种方法是使用 forcats
包中的 fct_reorder
:
library(forcats)
ggplot(data,aes(x=fct_reorder(Pathway,-Value),y=Value,fill=Col.Code)) +
geom_bar(stat='identity') +
labs(x = "Pathway")
我正在尝试以下绘图。
我有这个数据集:
Pathway Value Col.Code
AKTSig 1 r
HRAS 2 r
Lbind 3 h
GPCRact 4 r
ACHsig 5 h
ACEest -2 r
MRNAspl -3 h
Notch -4 h
Delta -5 r
Sonic -6 r
我想绘制一个图表,其中这些列具有沿 x 轴的路径,值在 y 轴上,并且列由 Col.Code 列着色。我已经从 ggplot2 尝试了 geom_col() 但这总是将列重新排列成随机顺序,即不是最高值到最负值。我也尝试过 geom_bar() 但这会为路径创建计数并且不会绘制我上面描述的内容。
你可以使用这个:
library(dplyr)
ggplot(data,aes(x=reorder(Pathway,-Value),y=Value,fill=Col.Code))+geom_bar(stat='identity')
另一种方法是使用 forcats
包中的 fct_reorder
:
library(forcats)
ggplot(data,aes(x=fct_reorder(Pathway,-Value),y=Value,fill=Col.Code)) +
geom_bar(stat='identity') +
labs(x = "Pathway")