3D基因组工具(HiC可视化)trackc--bioinfomatics tools 35
01 3D genome data analysis guides
茶树三维基因组-文献精读19
https://trackc.readthedocs.io/en/latest/install.html #官网
https://github.com/seqyuan/trackc #官网https://trackc.readthedocs.io/en/latest/analysis_guide/index.html #HiC可视化案例
GridSpec
在基因组区域中可视化多组学数据通常需要结合多个轨迹(tracks)。为了创建适合发表的高质量图像,精细调整每个轨迹的比例非常重要。快速调整轨迹比例以及轻松添加或移除轨迹的能力是一个重要问题。
trackc 提供了两种方法来绘制布局:
-
trackc.tenon -
trackc.make_spec
这些函数为用户提供了一种快速灵活的方法,用于调整每个轨迹的比例,同时方便地在多组学可视化布局中添加或移除轨迹。
1. trackc.tenon
-
trackc.tenon返回一个对象。例如:ten = trackc.tenon(width=5, height=1)
在此示例中,
ten是一个表示虚拟图形的对象,其宽度为 5,高度为 1。用户可以通过以下方法向该图形添加轨迹:ten.add(pos='bottom', height=4, hspace=0.1)
-
height参数 表示新添加轨迹的相对高度。例如,如果虚拟图形的高度为 1,而新轨迹的高度为 4,则子图的实际高度将为 1 * 4。 -
使用
ten.add方法 类似于搭建积木,用户可以通过pos参数 选择将新轨迹添加到顶部(top)或底部(bottom)。 -
hspace=0.1参数 控制新轨迹与相邻轨迹之间的间距。
-
2. trackc.make_spec
-
trackc.make_spec定义整个图像的大小,允许用户从上到下或从左到右设置一组子图,可以通过height_ratios或width_ratios控制各部分的比例。
可用轨迹
本节包括多个快速教程,展示了使用 trackc 进行组学数据可视化的功能。
- GridSpec
- trackc.tenon
- trackc.make_spec
- scale
- trackc.pl.scale_track
- trackc.pl.multi_scale_track
- mapC
- Get test data
- mapc_markline
- Virtual4C
- Get test Data
- gene
- convert GTF to BED12
- trackc.pl.scale_track
- bigwig
- Get test data
- bed
- bed styles
- bedGraphMatrix
- links
- Get test data
- zoomin
- highlight line
02 安装
trackc 运行需要 Python 版本 >= 3.8。
通过 PyPI 安装
使用以下命令安装 trackc:pip install trackc
更新 trackc 的命令:pip install --upgrade trackc
指定版本和安装源的命令:pip install -i https://pypi.org/simple trackc==版本号
开发版本
从 GitHub 安装 trackc 的命令:pip install git+https://github.com/seqyuan/trackc@main
03 heatmap
conf-hicmap_1.yml等很多
trackc:- ax: t1height: 2track_type: hicmaptrack_para:mat:method: extractContactRegionsclr: /path/GSM4417639_SK-N-DZ_C6BC81F2_b38d5.mcool::/resolutions/5120000row_regions:- chr6- chr8mapC:cmap: plasma
运行
trackc cli conf-hicmap_1.yml -s 4,1 -o chr6_chr8.pdf

conf-hicmap_4.yml
trackc:- ax: t1height: 1track_type: hicmaptrack_para:mat:method: extractCisContactclr: ./github/seqyuan/trackc_data/examples/HPDE6C7.chr18.mcool::/resolutions/25000mapC:map_type: triheight: 50label: tri- ax: t2height: 1hspace: 0.3track_type: hicmaptrack_para:mat2:method: extractCisContactclr: ./github/seqyuan/trackc_data/examples/HPDE6C7.chr18.mcool::/resolutions/25000mapC:map_type: triheight: 50label: tri-mat2- ax: t3height: 2hspace: 0.3track_type: hicmaptrack_para:mat:method: extractCisContactclr: ./github/seqyuan/trackc_data/examples/HPDE6C7.chr18.mcool::/resolutions/25000mapC:map_type: triheight: 50label: tri-symmetricsymmetric: True- ax: t4height: 1hspace: 0.3track_type: hicmaptrack_para:mat:method: extractCisContactclr:./github/seqyuan/trackc_data/examples/BxPC3.chr18.mcool::/resolutions/25000extend: 50mapC:cmap: PuBumap_type: recheight: 50label: rec- ax: t5height: 1hspace: 0.3track_type: hicmaptrack_para:mat2:method: extractCisContactclr: ./github/seqyuan/trackc_data/examples/BxPC3.chr18.mcool::/resolutions/25000extend: 50mapC:cmap: cividismap_type: recheight: 50label: rec-mat2- ax: t6height: 2hspace: 0.3track_type: hicmaptrack_para:mat2:method: extractCisContactclr: ./github/seqyuan/trackc_data/examples/BxPC3.chr18.mcool::/resolutions/25000extend: 50mapC:cmap: magmamap_type: recheight: 50symmetric: Truelogdata: Truelabel: rec-symmetric- ax: t1track_type: scale_tracktrack_para:scale_adjust: Mbtick_pos: topratio2ax: 1
运行
trackc cli conf-hicmap_4.yml -r 18:10000000-14500000

04 rearranged_interactions
ectopic_interactions.yaml
trackc:- ax: t1height: 2track_type: hicmaptrack_para:mat:method: extractContactRegionsclr: ./github/seqyuan/trackc_data/examples/BxPC3.chr18.mcool::/resolutions/50000balance: Falserow_regions: 18:45000000-78077248mapC:map_type: trilabel: tumor res=50kcmap: PuBumaxrange: 70ax_on: False- ax: t1track_type: scale_tracktrack_para:region: 18:45000000-78077248scale_adjust: Mbtick_pos: topratio2ax: 0.3space: 0.01tick_fontsize: 6label_fontsize: 7- ax: t2height: 0.2track_type: zoomintrack_para:raw_regions: 18:45000000-78077248zoomin_regions:- 18:47340000-50370000- 18:61140000-63630000- 18:74030000-77560000line_on: Falsefill: Truealpha: 0.5- ax: t3height: 0.4track_type: multi_scale_tracktrack_para:regions:- 18:47340000-50370000- 18:61140000-63630000- 18:74030000-77560000scale_adjust: Mbintervals: 2tick_fontsize: 7- ax: t4height: 2track_type: hicmaptrack_para:mat2:method: extractContactRegionsclr: ./github/seqyuan/trackc_data/examples/BxPC3.chr18.mcool::/resolutions/25000balance: Falserow_regions:- 18:47340000-50370000- 18:61140000-63630000- 18:74030000-77560000mapC:map_type: trilabel: ectopic interactionscmap: PuBuax_on: Falsemaxrange: 100- ax: t5height: 0.2track_type: zoomintrack_para:raw_regions:- 18:47340000-50370000- 18:61140000-63630000- 18:74030000-77560000zoomin_regions:- 18:47400000-48280000- 18:75280000-74030000line_on: Falsefill: Truealpha: 0.5- ax: t6height: 0.4track_type: multi_scale_tracktrack_para:regions:- 18:47400000-48280000- 18:75280000-74030000scale_adjust: Mbintervals: 2tick_fontsize: 7- ax: t7height: 1.25track_type: hicmaptrack_para:mat:method: extractContactRegionsclr: ./github/seqyuan/trackc_data/examples/BxPC3.chr18.mcool::/resolutions/25000balance: Falserow_regions:- 18:47400000-48280000- 18:75280000-74030000mapC:map_type: trilabel: neo tadcmap: PuBuheight: 40ax_on: Falsemaxrange: 200minrange: 10- ax: t8height: 0.5track_type: bw_tracktrack_para:bw: ./github/seqyuan/trackc_data/examples/GSM3178671_BxPC3_H3K27ac.bigwigregions:- 18:47400000-48280000- 18:75280000-74030000label: H3K27acbinsize: 2000color:- '#5B7695'- ax: t9height: 2.8track_type: gene_tracktrack_para:bed12: ./github/seqyuan/trackc_data/examples/hg19_chr18.gene.bed12regions:- 18:47400000-48280000- 18:75280000-74030000line: 12gene_fontszie: 8
运行
trackc cli ectopic_interactions.yaml -s 5,1

05 Virtual 4C
4C.yaml
trackc:- ax: t1height: 4track_type: hicmaptrack_para:mat:method: extractContactRegionsclr: ./github/seqyuan/trackc_data/tutorials/4C/GSM4604287_1360.sub.coolbalance: FalsemapC:map_type: trilabel: AML 1360cmap: PuBumaxrange: 6minrange: -6- ax: t2height: 0.7track_type: gene_tracktrack_para:bed12: ./github/seqyuan/trackc_data/tutorials/4C/GRCh38.gene.chr8chr14.bed12line: 3gene_fontszie: 10show_label:- MYC- ax: t3height: 0.7track_type: bw_tracktrack_para:bw: ./github/seqyuan/trackc_data/tutorials/4C/GSM4604189_H3K27ac.bwmaxrange: 10label: H3K27acbinsize: 10000invert_y: False- ax: t4height: 0.6track_type: virtual4Ctrack_para:clr: ./github/seqyuan/trackc_data/tutorials/4C/GSM4604287_1360.sub.coolmaxrange: 10label: Virtual 4Ctarget_color: tab:redtrack_type: linetarget: chr8:127735434-127735435- ax: t5height: 0.6track_type: multi_scale_tracktrack_para:scale_adjust: Mbintervals: 1tick_fontsize: 8
运行
trackc cli 4C.yaml -s 6,0.75 -r 'chr8:127000000-129200000 chr14:96500000-99300000'

06 常用命令行
import trackc as tcten = tc.tenon(figsize=(8,1))
ten.add(pos='bottom', height=3.6)
ten.add(pos='bottom', height=1)chr6_len = clr.chromsizes['chr6']
chr8_len = clr.chromsizes['chr8']mat = tc.tl.extractContactRegions(clr='GSM4417639_SK-N-DZ_C6BC81F2_b38d5.mcool::/resolutions/5120000', row_regions=['chr6', 'chr8'])
tc.pl.mapC(ax=ten.axs(0), mat=mat.cmat, map_type='triangle', maxrange=5000)tc.pl.multi_scale_track(ax=ten.axs(1), regions=['chr6:0-{0}'.format(chr6_len), 'chr8:0-{0}'.format(chr8_len)],scale_adjust='Mb', intervals=2, tick_rotation=0)
# tc.savefig('hicmap.pdf')

相关文章:
3D基因组工具(HiC可视化)trackc--bioinfomatics tools 35
01 3D genome data analysis guides 茶树三维基因组-文献精读19 https://trackc.readthedocs.io/en/latest/install.html #官网 https://github.com/seqyuan/trackc #官网https://trackc.readthedocs.io/en/latest/analysis_guide/index.html #HiC可视化案例 …...
【大模型微调】图片转pdf
有时候图片需要转成pdf https://www.bilibili.com/opus/982151156821131282 https://help.pdf24.org/ https://www.bilibili.com/video/BV163v2eyEWo/?vd_source=8318f88fcdf4948d2b21fae7c9cf3184 2024最新!小白如何安装破解版的 Acrobat https://www.32r.com/zt/dgyjzzrj/ …...
Linux-Ubuntu16.04摄像头 客户端抓取帧并保存为PNG
1.0:client.c抓取帧并保存为PNG #include <stdio.h> // 标准输入输出库 #include <stdlib.h> // 标准库,包含内存分配等函数 #include <string.h> // 字符串操作库 #include <linux/videodev2.h> // V4L2 视频设备…...
手机ip地址取决于什么?可以随便改吗
手机IP地址是指手机在连接到互联网时所获得的唯一网络地址,这个地址由一串数字组成,用于在网络中标识和定位设备。每个设备在连接到网络时都会被分配一个IP地址,它可以帮助数据包在网络中准确地找到目标设备。那么,手机IP地址究竟…...
计算机网络:TCP/IP协议的五大重要特性介绍
目录 一、逻辑编址 二、路由选择 三、名称解析 四、错误控制和流量控制 五、多应用支持 今天给大家聊聊TCP/IP协议中五大重要特性相关的知识,希望对大家深入了解该协议提供一些帮助! 一、逻辑编址 首先要了解什么是物理地址、逻辑地址。 ●...
Java与AWS S3的文件操作
从零开始:Java与AWS S3的文件操作 一、什么是 AWS S3?AWS S3 的特点AWS S3 的应用场景 二、Java整合S3方法使用 MinIO 客户端操作 S3使用 AWS SDK 操作 S3 (推荐使用) 三、总结 一、什么是 AWS S3? Amazon Simple Sto…...
详解 YOLOv5 模型运行参数含义以及设置及在 PyCharm 中的配置方法
详解 YOLOv5 模型运行参数含义以及设置及在 PyCharm 中的配置方法 这段代码中使用的命令行参数允许用户在运行 YOLOv5 模型时自定义多种行为和设置。以下是各个参数的详细说明和使用示例,以及如何在 PyCharm 中设置这些参数以确保正确运行带有参数的脚本。 命令行…...
Vue根据Div内容的高度给其Div设置style height
在 Vue.js 中,你可以使用 JavaScript 来动态地根据 div 的内容高度来设置其 style 的 height 属性。这通常是在组件挂载或更新时完成的,因为这时你已经有了实际的 DOM 元素可以操作。 以下是一个简单的例子,展示了如何实现这一点:…...
驱动篇的开端
准备 在做之后的动作前,因为win7及其以上的版本默认是不支持DbgPrint(大家暂时理解为内核版的printf)的打印,所以,为了方便我们的调试,我们先要修改一下注册表 创建一个reg文件然后运行 Windows Registr…...
OpenSSL 自建CA 以及颁发证书(网站部署https双向认证)
前言 1、前面写过一篇 阿里云免费ssl证书申请与部署,大家可以去看下 一、openssl 安装说明 1、这部分就不再说了,我使用centos7.9,是自带 openssl的,window的话,要去下载安装 二、CA机构 CA机构,全称为…...
吾杯网络安全技能大赛WP(部分)
吾杯网络安全技能大赛WP(部分) MISC Sign 直接16进制解码即可 原神启动 将图片用StegSolve打开 找到了压缩包密码 将解出docx文件改为zip 找到了一张图片和zip 再把图片放到stegSlove里找到了img压缩包的密码 然后在document.xml里找到了text.zip压缩包密码 然后就出来fl…...
按vue组件实例类型实现非侵入式国际化多语言翻译
#vue3##国际化##本地化##international# web界面国际化,I18N(Internationalization,国际化),I11L(International,英特纳雄耐尔),L10N(Localization,本地化)&…...
Java入门:22.集合的特点,List,Set和Map集合的使用
1 什么是集合 本质就是容器的封装,可以存储多个元素 数组一旦创建,长度就不能再改变了。 数组一旦创建,存储内容的类型不能改变。 数组可以存储基本类型,也可以存储引用类型。 数组可以通过length获得容量的大小,但…...
重生之我在异世界学编程之C语言:深入指针篇(下)
大家好,这里是小编的博客频道 小编的博客:就爱学编程 很高兴在CSDN这个大家庭与大家相识,希望能在这里与大家共同进步,共同收获更好的自己!!! 目录 题集(1)指针笔试题1&a…...
理解Parquet文件和Arrow格式:从Hugging Face数据集的角度出发
parquet发音:美 [pɑrˈkeɪ] 镶木地板;拼花木地板 理解Parquet文件和Arrow格式:从Hugging Face数据集的角度出发 引言 在机器学习和大数据处理中,数据的存储和传输格式对于性能至关重要。两种广泛使用的格式是 Parquet 和 Arr…...
下载 M3U8 格式的视频
要下载 M3U8 格式的视频(通常是 HLS 视频流),可以尝试以下几种方法: 方法 1:使用下载工具(推荐) 1. IDM(Internet Download Manager): 安装 IDM 并启用浏…...
Tomcat使用教程
下载地址:https://tomcat.apache.org/ 配置环境变量 变量名: CATALINA_HOME 变量值: D:\tools\apache-tomcat-9.0.97 Path: %CATALINA_HOME%\bin 启动Tomcat(打开命令提示符) startup.bat 解决乱码问题(打开conf\logging.properties) java.util.logging.Conso…...
LabVIEW氢气纯化控制系统
基于LabVIEW的氢气纯化控制系统满足氢气纯化过程中对精确控制的需求,具备参数设置、过程监控、数据记录和报警功能,体现了LabVIEW在复杂工业控制系统中的应用效能。 项目背景 在众多行业中,尤其是石油化工和航天航空领域,氢气作为…...
现在的电商风口已经很明显了
随着电商行业的不断发展,直播带货的热潮似乎正逐渐降温,而货架电商正成为新的焦点。抖音等平台越来越重视货架电商,强调搜索功能的重要性,预示着未来的电商中心将转向货架和搜索。 在这一转型期,AI技术与电商的结合为…...
Uniapp触底刷新
在你的代码中,使用了 scroll-view 来实现一个可滚动的评论区域,并且通过监听 scrolltolower 事件来触发 handleScrollToLower 函数,以实现“触底更新”或加载更多评论的功能。 关键部分分析: scroll-view 组件: scroll-view 是一…...
以下是对华为 HarmonyOS NETX 5属性动画(ArkTS)文档的结构化整理,通过层级标题、表格和代码块提升可读性:
一、属性动画概述NETX 作用:实现组件通用属性的渐变过渡效果,提升用户体验。支持属性:width、height、backgroundColor、opacity、scale、rotate、translate等。注意事项: 布局类属性(如宽高)变化时&#…...
(二)TensorRT-LLM | 模型导出(v0.20.0rc3)
0. 概述 上一节 对安装和使用有个基本介绍。根据这个 issue 的描述,后续 TensorRT-LLM 团队可能更专注于更新和维护 pytorch backend。但 tensorrt backend 作为先前一直开发的工作,其中包含了大量可以学习的地方。本文主要看看它导出模型的部分&#x…...
服务器硬防的应用场景都有哪些?
服务器硬防是指一种通过硬件设备层面的安全措施来防御服务器系统受到网络攻击的方式,避免服务器受到各种恶意攻击和网络威胁,那么,服务器硬防通常都会应用在哪些场景当中呢? 硬防服务器中一般会配备入侵检测系统和预防系统&#x…...
定时器任务——若依源码分析
分析util包下面的工具类schedule utils: ScheduleUtils 是若依中用于与 Quartz 框架交互的工具类,封装了定时任务的 创建、更新、暂停、删除等核心逻辑。 createScheduleJob createScheduleJob 用于将任务注册到 Quartz,先构建任务的 JobD…...
Nuxt.js 中的路由配置详解
Nuxt.js 通过其内置的路由系统简化了应用的路由配置,使得开发者可以轻松地管理页面导航和 URL 结构。路由配置主要涉及页面组件的组织、动态路由的设置以及路由元信息的配置。 自动路由生成 Nuxt.js 会根据 pages 目录下的文件结构自动生成路由配置。每个文件都会对…...
高效线程安全的单例模式:Python 中的懒加载与自定义初始化参数
高效线程安全的单例模式:Python 中的懒加载与自定义初始化参数 在软件开发中,单例模式(Singleton Pattern)是一种常见的设计模式,确保一个类仅有一个实例,并提供一个全局访问点。在多线程环境下,实现单例模式时需要注意线程安全问题,以防止多个线程同时创建实例,导致…...
JVM虚拟机:内存结构、垃圾回收、性能优化
1、JVM虚拟机的简介 Java 虚拟机(Java Virtual Machine 简称:JVM)是运行所有 Java 程序的抽象计算机,是 Java 语言的运行环境,实现了 Java 程序的跨平台特性。JVM 屏蔽了与具体操作系统平台相关的信息,使得 Java 程序只需生成在 JVM 上运行的目标代码(字节码),就可以…...
LangChain知识库管理后端接口:数据库操作详解—— 构建本地知识库系统的基础《二》
这段 Python 代码是一个完整的 知识库数据库操作模块,用于对本地知识库系统中的知识库进行增删改查(CRUD)操作。它基于 SQLAlchemy ORM 框架 和一个自定义的装饰器 with_session 实现数据库会话管理。 📘 一、整体功能概述 该模块…...
力扣热题100 k个一组反转链表题解
题目: 代码: func reverseKGroup(head *ListNode, k int) *ListNode {cur : headfor i : 0; i < k; i {if cur nil {return head}cur cur.Next}newHead : reverse(head, cur)head.Next reverseKGroup(cur, k)return newHead }func reverse(start, end *ListNode) *ListN…...
【Nginx】使用 Nginx+Lua 实现基于 IP 的访问频率限制
使用 NginxLua 实现基于 IP 的访问频率限制 在高并发场景下,限制某个 IP 的访问频率是非常重要的,可以有效防止恶意攻击或错误配置导致的服务宕机。以下是一个详细的实现方案,使用 Nginx 和 Lua 脚本结合 Redis 来实现基于 IP 的访问频率限制…...
