我正在使用dssp Programm进行二级结构分析。 它创建一个具有不同字符串的Vector,可以将其解释为辅助结构。
例如:" " " "," S"," H"," H"," H"," H", " "," S"," "," T"," T"," "," "," S"," "
我对我的MD模拟的不同帧进行了dssp分析,现在想要显示每个残差在某个帧中属于哪种二级结构(根据dssp)。
我已经拥有一个包含信息的数据框(列以Residue命名,后面是Rows) 例如
Res1 Res2 Res3 Res4
Frame 1 H T B ""
Frame 1001 H H S ""
Frame 2001 H H S ""
英语不是我的母语,所以我觉得很难找到合适的词语来从搜索引擎那里获得帮助。
我认为应该可以使用ggplot2,但我是R和ggplot2中的血腥初学者
答案 0 :(得分:0)
从您的数据中,dat
。首先,我们需要重新安排它:
library(tidyr)
library(dplyr)
library(ggplot2)
dat <- dat %>% add_rownames("row") %>%
gather(var, val, -row)
您的数据现在应该如下:
Source: local data frame [12 x 3]
row var val
(chr) (fctr) (chr)
1 Frame 1 Res1 H
2 Frame 1001 Res1 H
3 Frame 2001 Res1 H
4 Frame 1 Res2 T
5 Frame 1001 Res2 H
6 Frame 2001 Res2 H
7 Frame 1 Res3 B
8 Frame 1001 Res3 S
9 Frame 2001 Res3 S
10 Frame 1 Res4 NA
11 Frame 1001 Res4 NA
12 Frame 2001 Res4 NA
现在我们可以绘制:
ggplot(dat, aes(x = factor(row), y = factor(val), group = var, col = var)) +
geom_line()
您可能希望手动为val
订购因子,您可以更改levels
参数中的顺序。在此之后重新运行plot factor
{/ 1>}周围的val
dat$val <- factor(dat$val, levels = c(NA, "S", "B", "H", "T"))