一软件包介绍
密度图是一种展示与数据组对应的边界或阈对象的可视化方式。简而言之呢,就是展示不同组别数据间的边界以及相互之间的比例。是一种非常形象的展示数据分布的方式(当然,通过条形图、折线图等也可展示,只是不那么美观)。
二 python包使用
1 加载对应的python包
2 加载数据集
之后,加载数据集。这里需要提到的是我们在做推文数据展示的时候会苦恼数据从何而来。创造数据吧,绞尽脑汁也不一定有好的数据,因此如果用自己论文的数据,就...(
论文想不想发了,还毕不毕业了
)。如果用别人论文的数据,又有侵权风险。因此,最好用的方式就是使用公共数据集,不仅数据合理,而且可视化的效果也好。
PS:因为默认情况下seaborn包绘图会有背景和网格,这里需要通过set_style实现去除的效果,各位读者可以按照个人需求增减
其中tips的文件数据为
其中geyser的文件数据为
随后,我们开始各种类型密度图的绘制
3 密度图绘制
3.1 第一种密度图(一维)
首先,直接代码贴上
本段代码共有五句话:1定义输出图片名称;2定义图片大小;3调用包进行绘图;4将图片保存;5关闭绘图窗口。
其中sns.kdeplot参数的意思分别是:
data:数据集
x:数据集中用于绘绘图的列数据
hue:映射以确定绘图元素颜色的语义变量,即元素分类列
multiple:密度图多个元素的绘图方法
随后,一键出图。
3.2 第二种密度图(一维)
代码意思与第一种密度相差不大,重点再与第三句参数的意思。
fill:如果为真,则填充单变量密度曲线下面积。如果为假,则仅有线条。
common_norm:如果为真,则按观察次数缩放每个条件密度,使所有密度下的总面积总和为1。否则,独立地归一化每个密度。
palette:用于选择映射色调语义时使用的颜色的方法。字符串值被传递到color_palete。如果是列表或dict值表示分类映射,而colormap对象表示数字映射。这里我们的size是数字,应该属于后者,即列表表示分类映射。
alpha:颜色的透明度。
linewidth:每个曲线最外围的线条长度。
3.3 第三种密度图(二维)
之前的3.1和3.2都是一维数据进行密度图展示,这里我们也提供了另一种方式用于二维数据的密度展示。
3.4 第四种密度图(二维)
3.3图虽然能够展现二维数据的密度分布,但是太不够直观了,所以这里我们提供一种方式将不同的密度通过颜色深浅进行展示。可以看出中心区域的点密度最高。
3.5 第五种密度图(二维)
这里的代码新增了两个参数,thresh和levels
thresh:绘制等高线的最低iso比例级别。当级别为向量时忽略。仅与双变量数据相关。
levels: 绘制等高线的等高线级别或值的数量。向量参数必须在[0,1]中具有递增值。水平对应于密度的iso比例:例如,20%的概率质量将低于0.2绘制的等高线。仅与双变量数据相关。
随后,一键出图。
不得不说,这种图片隐隐有那种通过望远镜观察宇宙中遥远双子星系的赶脚。
三 惯例小结
实际上,数据的展示方式多种多样。本推文所提供的密度图展示方式,虽有其不合理之处,比如会降密度分布超出数据边界,显然是不合理的。但是,对于一些数据而言,该方法能够很好的反应数据的部分特征,则使用该方法也并无不可。
其次,最近为啥更新的少了呢,因为懒了
。
Multi-omics Hammer软件下载地址:
https://github.com/wangjun258/Multi-omics-Hammer
Multi-omics Visual软件下载地址:https://github.com/wangjun258/Multi_omics_Visual/releases/tag/Multi_omics_Visual_v1.03
PS:因为本软件是用python脚本撰写,调用了部分依赖包,用户首次使用需要安装python以及对应的包,安装之后便可永久使用。
本公众号开发的相关软件,Multi-omics Hammer软件和Multi-omics Visual软件欢迎大家使用。文末是本公众号在其他平台的账户,也欢迎大家关注并多提意见。
简书:WJ的生信小院
公众号:生信小院
博客园:生信小院
最后,也欢迎各位大佬能够在本平台上:1传播和讲解自己发表的论文;2:发表对某一科研领域的看法;3:想要达成的合作或者相应的招聘信息;4:展示自己以寻找博后工作或者博士就读的机会;5:博导提供博后工作或者博士攻读机会,都可以后台给笔者留言。希望本平台在进行生信知识分享的同时,能够成为生信分析者的交流平台,能够实现相应的利益互补和双赢(不一定能实现,但是梦想总得是有的吧)。
另外,怎么说呢,投币也可,不强求,但奢求。