UCSC-browser学习:创建自己的track hubs
在看paper的时候,经常会有这种图:
这是从UCSC browser上可视化数据然后截图下来的,我们可以将数据传到UCSC上,制作自己的track hubs,然后选择我们想看的区域截图就可以了。
1. Track Hubs的介绍
简单来说,track hubs相当于在UCSC browser上的一个可网络共享的一个基因组可视化工具。
在UCSC的页面选择track hubs,即可进入页面:
在国内一般会提示:
建议选择亚洲区,速度会快很多。
进去后在public hubs中可以看到别人做的hubs:
点connect,就可以看到别人做的hubs了:
在Hub development里可以检查我们创建的hub.txt是否有问题和直接可视化(此处xxx隐藏了部分网址),如果hub.txt中有错误的参数设置、找不到文件等这里会报错:
在My hubs中,贴上自己的hub.txt的url,就可以add进来了:
点击Assemblies下面的mm10即可进入,可以修改position看不同区域的情况:
2. 设置Track Hubs
核心的问题来了,上面的URL怎么得到呢?
首先我们需要创建类似于这样的文件夹: Myhub/ -- genomes.txt -- hub.txt mm10/ -- trackDb.txt --Mydata.bw
在Myhub文件夹下,有genome.txt文件,hub.txt文件和mm10文件夹,mm10下游trackDb.txt文件和我们的基因组文件(bigwig, bed等)。
UCSC上的例子:
genome.txt必须的内容(基因组版本和trackDb.txt的路径):
genome mm10
trackDb mm10/trackDb.txt
hub.txt的内容(hub的名字;标签;genomes.txt;email;description):
hub ENCODE_mm10_kallisto
shortLabel kallisto
longLabel kallisto mm10 data
genomesFile genomes.txt
email xxx@xxx.com
descriptionUrl description.txt
(description可以不加,不过在Hub development中check的时候会出现一个warning)
mm10/trackHub.txt的内容(仅展示了一部分):
track neural-tube_15.5_1_forward
bigDataUrl neural-tube_15.5_1_forward.bw
shortLabel neural-tube 15.5 rep1 forward
longLabel neural-tube 15.5 rep1 forward
type bigWig
visibility full
autoScale on
maxHeightPixels 128:32:11
priority 1
color 255,0,0
其中: bigDataUrl是我们要可视化的文件的名字; type是格式,不仅仅支持bigwig还有bigBed、VCF、BAM等等格式。具体可以参考https://genome.ucsc.edu/goldenpath/help/hgTrackHubHelp.html中的介绍; priority是优先级; color不加默认是黑色,仅支持RGB格式。
然后我们将hub.txt的链接拷贝到UCSC的页面中就可以了。
另外,我们也可以通过链接访问到,比如如下链接: http://genome.ucsc.edu/cgi-bin/hgTracks?db=hg19&hubUrl=http://ftp.ebi.ac.uk/pub/databases/ensembl/encode/integration_data_jan2011/hub.txt
db=hg19这里必须改成自己的基因组版本,后面的hubUrl也需要改成自己的。并且,最重要的是,如果我们使用亚洲版本的UCSC创建的hub的话,这个链接前面必须是http://genome-asia.ucsc.edu/,否则显示不出来。
3. 保存自己的hubs
在可视化界面,选择My sessions:
随后会跳转到如下界面,有账号的登录,没账号的需要注册一个:
登录了之后在Save Settings选择submit即可。
- C++编译错误cannot have cv-qualifier
- Python写TCP端口扫描工具之IP协议的讲解
- mac上nginx+jetty负载均衡部署一览
- Python标准库(1) — itertools模块
- C++从键盘输入文件结束符
- java cpu高达100%问题 排查
- (43) 剖析TreeMap / 计算机程序的思维逻辑
- Spring Cloud第一篇 Eureka简介及原理
- 华为面试题——约瑟夫问题的C++简单实现(循环链表)
- (49) 剖析LinkedHashMap / 计算机程序的思维逻辑
- Python多进程并行编程实践-mpi4py的使用
- 华为面试题——一道关于指针方面的编程题(C/C++)
- Spring Cloud第二篇 创建一个Eureka Server
- 数据挖掘实战(一):Kaggle竞赛经典案例剖析
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- ES2020 中 Javascript 10 个你应该知道的新功能
- Selenium 系列篇(一):准备篇
- HTML5+CSS3高级动画的应用实践
- 这五个有用的 CSS 属性完全被我忽视了
- 在 Kubernetes 中使用 Helm Hooks 迁移数据库
- 漫画:如何螺旋遍历二维数组?
- 轻松学Pytorch-迁移学习实现表面缺陷检查
- 汇总 | OpenCV4中的非典型深度学习模型
- 如何使用私有仓库的 Go Modules
- python绘图 | salem一招解决所有可视化中的掩膜(Mask)问题
- Tungsten Fabric知识库丨关于OpenStack、K8s、CentOS安装问题的补充
- Cypress系列(51)- its() 命令详解
- 推荐 | 深度学习反卷积最易懂理解
- Java实现抢红包算法,附完整代码(公平版和手速版)
- 【代码审计】xyhcms3.5后台任意文件读取