高效绘图小工具:Multi-omics Visual
对于科研人员而言,很好的展现数据是工作中的必要技能,图最为可视化的最主要形式是最为简单直接的一种表现方式。但是如何绘制精美的图片则一直是个比较繁琐的事情。诚然,市面上已经有了许许多多优秀的绘图软件,比如origin、sigmaplot。这些商业软件满足了大部分人的绘图需求,成为了许多数据分析人员不可或缺的帮手。但是,使用这些绘图软件会面临两个问题:一个是作为商业软件,需要付费购买(大部分人应该都是用的其他途径),第二,就是这些软件都有一定的学习成本,第三,部分软件的重现性较为复杂(需要每次重新调整配置,完成图片绘制)。其中软件的学习成本较高是主要是因为这些软件需要照顾大部分的使用人群,需用使用一种通用的技巧来教会所有人使用这些软件。因此,在我做数据分析的时候就想到一个问题,为什么不开发一种虽然可能适用于不那么多的人,但是操作简单、易于上手、方便重现和批量作图的图形软件呢。因此,基于这个出发点,基于python丰富多样的模块便写了一个小工具Multi-omics Visual,在可以定制一些常规图片的同时,也可以实现批量作图的功能。但是本软件并不如市面的大部分商业软件那样,提供了丰富的绘图样式,本软件仅仅提高了少量的绘图样式。但是,本软件最大的意义是提供了一个框架,可以快速将python上流行的绘图包通过重写其中的某些功能将其加入到本软件中,实现用户不写代码,仅仅通过在GUI界面调整某些参数,即可快速实现图片的绘制和调整。当然,对于后续的使用者来说,这种框架所提供的功能是可以扩展的,只需要有相应的python绘图包发布,那么本软件可以快速将这些工具集成到绘图选项中,从而帮助用户快速上手,完成相应的可视化工作。
Python的另一个优势便是机器学习。现如今python已经成为许多机器学习人员的主要编程语言了。考虑到现如今机器学习也已经成为生物数据分析的常用手段,所以本软件基于现在流行的一些机器学习框架,实现的一些常见的机器学习模型,方便用户操作与实践。只是这部分功能对大部分用户而言,目前可以不用考虑。
因为本软件是使用纯python编写的,打包成二进制文件发布的,所以与一般的exe文件有所不同,需要创建相应的运行环境。运行本软件需要首先安装python(>=3.8),并将其添加到系统路径。随后,在cmd上pip安装指定包既可,其中pip的命令为
pip install pandas PyQt5 numpy matplotlib requests colour scipy seaborn datetime sklearn matplotlib_venn -i https://pypi.tuna.tsinghua.edu.cn/simple
完成上述操作后,即创建好相应的运行环境。随后,在github上下载已经编译好的软件包,地址为https://github.com/wangjun258/Multi_omics_Visual。如果读者从github上下载太慢,也可以直接联系本公众号《生信小院》获取。而下载好本软件后,在解压之后的Multi_omics_Visual文件夹中直接查找Multi_omics_Visual.exe程序,双击即可运行。如果想要随时随地使用本软件,建议为Multi_omics_Visual.exe程序创建快捷方式,并放于桌面。而在介绍完软件开发的目的之后,接下来,开门见山,介绍一下软件的基本功能。
首先,从图1中我们可以看出Multi-omics Visual软件总共包含五大部分,分别为“Plot_draw”、“Bioinformatic”、“Machine_learning”、 “Data_clean”和“Help”五大部分。 “Plot_draw”中包含一些常见图片的绘制功能,如条形图(barplot_chart)、折线图(line_char)、混合图(bar_line_chart)、热图(heatmap)、PCA图(PCA_chart)、韦恩图(Veen)、饼图(pie_chart)和一些3D图(heatmap_3D、barplot_3D)等。“Bioinformatic”目前仅仅实现了基于SW算法(纯python实现,不基于任何模块)的Blast序列分析,后续会逐步添加其他的基于机器学习的生物信信分析功能。“Machine_learning”则实现了一些常规机器学习算法,包括线性回归(Liner_regression)、朴素贝叶斯(BavieByes)、梯度下降(GradAscent)等算法,方便用户进行实践。“Data_clean”中则包含了对数据进行整理的一些简单方法。“Help”中则包含了本软件开发者的相关信息。软件的主界面则是如下图2所示。
打开上面的软件界面之后,我们就可以选择其中的“Plot_draw”功能的heatmap_3D选项。
随后,弹出下图4中右下角的界面,包含三个部分,其中第一部分为“input file”时输入文件框,第二部分为“input file batch”是用于批量作图的选项,第三部分为“Image Output”则是用来指定输出的图像文件的路径。本次输入的文件为demo_heatmap_3D.txt文件,内容如左下角所示。
在导入文件之后,我们可以通过图五右上角的Adjustment para选项,弹出右下角的参数对话框,再通过点击①,将参数文件保存,之后打开参数文件demo_heatmap_3D_arg.txt文件即③中可实现在文件中修改数据。之后按照④的路径将参数文件拖入到⑤的文本框中,点击⑥从而修改参数对话框中部分参数的选项。当然,本软件也提供直接在参数对话框中修改相应的参数。完成上述操作之后,便可以直接点击⑦,打开绘图对话框。
如下图6所示,我们在Figure1中即可实现三维图形的绘制,并可以通过拖动鼠标完成三维图形的旋转。之后通过这个对话框中的保存选项或者在“Image Output”中指定保存文件路径,即可实现文件的保存。
以上就是简单介绍了一下如何使用本软件绘制3D图形。只是这一功能只是本软件众多功能中的冰山一角,还有许多功能将在接下来的推文中继续演示。也欢迎用户提出建议,本人也会进一步维护这个项目(https://github.com/wangjun258/Multi_omics_Visual)。
最后,进一步推广一下我开发的相关软件,Multi-omics Hammer软件和Multi-omics Visual软件,具体地址的话可以去github上搜索,欢迎大家多多使用,多提宝贵建议。搜索V信,公众,号:生信小院,其中分享了更多了与生信学习的相关信息,欢迎大家阅读。
共有 0 条评论