Echarts绘制差异代谢产物分类与KEGG通路分类的旭日图

2024-04-29 01:58

本文主要是介绍Echarts绘制差异代谢产物分类与KEGG通路分类的旭日图,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

文章目录

      • 前言
      • 数据准备工作
      • 绘图
        • excel旭日图的绘制
        • ECharts旭日图的绘制
          • ECharts旭日图
          • 菜鸟编辑器修改后的旭日图
      • 附演示代码

前言

整理实验数据,进行可视化,旭日图有利于简洁明了的展示多层次结构

数据准备工作

  • 对公司返回回来的代谢组结果进行整理,在MSMS二级质谱结果中找到需要分析组别的csv格式文件,直接用excel打开(p值过滤后的数据)
image-20211222195935067
  • 在总表的结果文件中找到全部物质的KEGG信息和HMDB信息
image-20211222200239998
  • 利用vlookup函数对目的分组数据进行所需信息的匹配

    image-20211222200448598
  • 对匹配后的物质进行手动筛选分类整理

image-20211222200548216

绘图

excel旭日图的绘制
  • 对上面分类汇总的数据设置如下(不要合并单元格,最后一列一定要赋值
image-20211222200930875
  • 选中A列到D列区域的有效数据,插入-插入层次结构图表-旭日图,生成如下
image-20211222201055168
  • 注意:多层子目录不要命名,写一个,下面同样的空白即可;最后一列一定要赋值,没有具体的值可以像我一样全部写1,不然无法生成旭日图
ECharts旭日图的绘制
  • excel一键绘制旭日图虽然快捷简便,但许多细节无法按需调整,色彩饱和度过高,数据标签的摆放,圈内外径的调整等等都不方便,而下面使用echarts绘制旭日图尽管录入数据麻烦,但是出图美观,调整方便
  • 可直接在 ECharts旭日图 (我这里用的drink flavor,更适合我的展示需求)按数据准备中整理后的结果替换模板,实时可视化,便于调整,可出png和svg两种格式结果图
  • 可根据 RGB颜色对照表 自行替换想要颜色
  • 画布大小问题
    • 在线的echarts的画布大小是根据浏览器页面调整的,有时候会出现超出页面且下载后的图片也显示不全的情况(在线的就是显示什么样,下载下来就什么样),这时可调整最后option参数中r0r的半径范围来控制整个图片大小
    • 如果数据太多仍然显示不全,可使用另一个 菜鸟在线编辑器 ,可设置画布大小(这里每次调整需重新运行,不能实时运行,建议在echarts中调整差不多后再到这边调整出图大小)。菜鸟只能直接出png格式,且默认最外层字体颜色随子扇叶(个人觉得更美观,不喜欢可以color: #000000)
ECharts旭日图
ECharts旭日图
菜鸟编辑器修改后的旭日图
image-20211222203242623

附演示代码

附编辑器内全部演示代码,echarts则只用var data部分即可。

<!DOCTYPE html>
<html>
<head><meta charset="utf-8"><title>ECharts 实例</title><!-- 引入 echarts.js --><script src="https://cdn.staticfile.org/echarts/4.3.0/echarts.min.js"></script>
</head>
<body><!-- 为ECharts准备一个具备大小(宽高)的Dom --> //设置画布大小<div id="main" style="width: 1200px;height:1200px;"></div> <script type="text/javascript">// 基于准备好的dom,初始化echarts实例var myChart = echarts.init(document.getElementById('main'));var data = [{name: 'Amino acid', //最里面第一层圈itemStyle: {color: '#B22222'},children: [ //第二层子圈{name: 'Cysteine and\n methionine metabolism',itemStyle: {color: '#DC143C'},children: [ //第三层子圈{name: '5-Methylthioadenosine',value: 1,itemStyle: {color: '#DC143C'}},]},{name: 'Glutathione metabolism',itemStyle: {color: '#CD5555'},children: [{name: 'Pyroglutamic acid',value: 1,itemStyle: {color: '#CD5555'}},]},{name: 'Lysine biosynthesis',itemStyle: {color: '#EE6363'},children: [{name: 'Aminoadipic acid',value: 1,itemStyle: {color: '#EE6363'}},]},{name: 'Tryptophan metabolism',itemStyle: {color: '#FF6A6A'},children: [{name: 'N-Acetylserotonin',value: 1,itemStyle: {color: '#FF6A6A'}},{name: 'L-Formylkynurenine',value: 1,itemStyle: {color: '#FF6A6A'}},]},{name: 'Tyrosine metabolism',itemStyle: {color: '#FA8072'},children: [{name: 'Normetanephrine',value: 1,itemStyle: {color: '#FA8072'}},]},]},{name: 'Carbohydrate',itemStyle: {color: '#CD950C'},children: [{name: 'Amino sugar and\n nucleotide sugar metabolism',itemStyle: {color: '#EEAD0E'},children: [{name: 'Chitobiose',value: 1,itemStyle: {color: '#EEAD0E'}},{name: 'N-Acetyl-D-glucosamine',value: 1,itemStyle: {color: '#EEAD0E'}},]},{name: 'Glycolysis / Gluconeogenesis',itemStyle: {color: '#FFB90F'},children: [{name: 'D-Glucose 1-phosphate',value: 1,itemStyle: {color: '#FFB90F'}},]},{name: 'Butanoate metabolism',itemStyle: {color: '#CDAD00'},children: [{name: '(R)-3-Hydroxybutyric acid',value: 1,itemStyle: {color: '#CDAD00'}},]},{name: 'Starch and sucrose metabolism',itemStyle: {color: '#FFD700'},children: [{name: 'Glucose 6-phosphate',value: 1,itemStyle: {color: '#FFD700'}},]},{name: 'Citrate cycle (TCA cycle)',itemStyle: {color: '#FFA500'},children: [{name: 'Citric acid',value: 1,itemStyle: {color: '#FFA500'}},{name: 'Succinic acid',value: 1,itemStyle: {color: '#FFA500'}},]},{name: 'C5-Branched dibasic acid\n metabolism',itemStyle: {color: '#CD8500'},children: [{name: 'Mesaconate',value: 1,itemStyle: {color: '#CD8500'}},]},{name: 'Pentose and \nglucuronate interconversions',itemStyle: {color: '#FF8C00'},children: [{name: 'Ribitol',value: 1,itemStyle: {color: '#FF8C00'}},]},]}, {name: 'Cofactors and\n Vitamins',itemStyle: {color: '#20B2AA'},children: [{name: 'Retinol metabolism',itemStyle: {color: '#53868B'},children: [{name: 'Stale',value: 1,itemStyle: {color: '#53868B'}},]},{name: 'Biotin metabolism',itemStyle: {color: '#008080'},children: [{name: 'Biotin',value: 1,itemStyle: {color: '#008080'}},{name: 'Dethiobiotin',value: 1,itemStyle: {color: '#008080'}},]},{name: 'Vitamin B6 metabolism',itemStyle: {color: '#008B8B'},children: [{name: '4-Pyridoxic acid',value: 1,itemStyle: {color: '#008B8B'}},]},{name: 'Nicotinate and nicotinamide \nmetabolism',itemStyle: {color: '#79CDCD'},children: [{name: 'Quinolinic acid',value: 1,itemStyle: {color: '#5F9EA0'}},]}, {name: 'Thiamine metabolism',itemStyle: {color: '#20B2AA'},children: [{name: '5-(2-Hydroxyethyl)-4-methylthiazole',value: 1,itemStyle: {color: '#20B2AA'}},]},{name: 'Pantothenate and \nCoA biosynthesis',itemStyle: {color: '#00CED1'},children: [{name: 'Pantothenic acid',value: 1,itemStyle: {color: '#00CED1'}},]},  {name: 'Folate biosynthesis',itemStyle: {color: '#48D1CC'},children: [{name: 'Pyrimidodiazepine',value: 1,itemStyle: {color: '#48D1CC'}},]},  {name: 'Ubiquinone and other \nterpenoid-quinone biosynthesis',itemStyle: {color: '#40E0D0'},children: [{name: 'Dehypoxanthine futalosine',value: 1,itemStyle: {color: '#40E0D0'}},]},{name: 'Riboflavin metabolism',itemStyle: {color: '#AFEEEE'},children: [{name: 'Lumichrome',value: 1,itemStyle: {color: '#AFEEEE'}},{name: 'Riboflavin',value: 1,itemStyle: {color: '#AFEEEE'}},]},]},{name: 'Lipid',itemStyle: {color: '#CDB38B'},children: [{name: 'Fatty acid biosynthesis',itemStyle: {color: '#EECBAD'},children: [{name: 'Myristic acid',value: 1,itemStyle: {color: '#EECBAD'}},]},{name: 'alpha-Linolenic acid metabolism',itemStyle: {color: '#FFDAB9'},children: [{name: 'Stearidonic acid',value: 1,itemStyle: {color: '#FFDAB9'}},]},{name: 'Steroid biosynthesis',itemStyle: {color: '#EED5B7'},children: [{name: 'Lathosterol',value: 1,itemStyle: {color: '#EED5B7'}},]},{name: 'GlycerophosphoLipid',itemStyle: {color: '#FFE4C4'},children: [{name: 'Glycerol 3-phosphate',value: 1,itemStyle: {color: '#FFE4C4'}},]},]},{name: 'Nucleotide',itemStyle: {color: '#2E8B57'},children: [{name: 'Purine metabolism',itemStyle: {color: '#3CB371'},children: [{name: 'beta-D-3-Ribofuranosyluric acid',value: 1,itemStyle: {color: '#3CB371'}},]},{name: 'Pyrimidine metabolism',itemStyle: {color: '#8FBC8F'},children: [{name: 'Cytosine',value: 1,itemStyle: {color: '#8FBC8F'}},{name: 'Thymine',value: 1,itemStyle: {color: '#8FBC8F'}},{name: 'Dihydrouracil',value: 1,itemStyle: {color: '#8FBC8F'}},]},]},{name: 'Xenobiotics',itemStyle: {color: '#CD96CD'},children: [{name: 'Neomycin, kanamycin and\n gentamicin biosynthesis',itemStyle: {color: '#AB82FF'},children: [{name: 'Gentamicin C1a',value: 1,itemStyle: {color: '#AB82FF'}},]},]},
];
option = {title: {textStyle: {fontSize: 14,align: 'center'},subtextStyle: {align: 'center'},sublink: 'https://twocanis.github.io/'},series: {type: 'sunburst',data: data,radius: [0, '95%'],sort: undefined,emphasis: {focus: 'ancestor'},levels: [{},{r0: '13%', //内径r: '30%', //外径itemStyle: {borderWidth: 2},label: {align: 'right',  //调整文字摆放方向fontSize: 14, //调整label字符大小color:'#000000', //使文字显示为黑色}},{r0: '30%', //下一个圈的内径要和上一个全2外经一致才不会出现交错r: '68%',label: {align: 'right',fontSize: 14,color:'#000000'}},{r0: '68%',r: '70%',label: {position: 'outside',padding: 3,fontSize: 14, //这里不额外设置颜色则和母扇叶颜色一致silent: false},itemStyle: {borderWidth: 4}}]}
};// 使用刚指定的配置项和数据显示图表。myChart.setOption(option);</script>
</body>
</html>

这篇关于Echarts绘制差异代谢产物分类与KEGG通路分类的旭日图的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/944831

相关文章

Mysql中InnoDB与MyISAM索引差异详解(最新整理)

《Mysql中InnoDB与MyISAM索引差异详解(最新整理)》InnoDB和MyISAM在索引实现和特性上有差异,包括聚集索引、非聚集索引、事务支持、并发控制、覆盖索引、主键约束、外键支持和物理存... 目录1. 索引类型与数据存储方式InnoDBMyISAM2. 事务与并发控制InnoDBMyISAM

使用Navicat工具比对两个数据库所有表结构的差异案例详解

《使用Navicat工具比对两个数据库所有表结构的差异案例详解》:本文主要介绍如何使用Navicat工具对比两个数据库test_old和test_new,并生成相应的DDLSQL语句,以便将te... 目录概要案例一、如图两个数据库test_old和test_new进行比较:二、开始比较总结概要公司存在多

C#使用DeepSeek API实现自然语言处理,文本分类和情感分析

《C#使用DeepSeekAPI实现自然语言处理,文本分类和情感分析》在C#中使用DeepSeekAPI可以实现多种功能,例如自然语言处理、文本分类、情感分析等,本文主要为大家介绍了具体实现步骤,... 目录准备工作文本生成文本分类问答系统代码生成翻译功能文本摘要文本校对图像描述生成总结在C#中使用Deep

使用Python绘制蛇年春节祝福艺术图

《使用Python绘制蛇年春节祝福艺术图》:本文主要介绍如何使用Python的Matplotlib库绘制一幅富有创意的“蛇年有福”艺术图,这幅图结合了数字,蛇形,花朵等装饰,需要的可以参考下... 目录1. 绘图的基本概念2. 准备工作3. 实现代码解析3.1 设置绘图画布3.2 绘制数字“2025”3.3

使用Python绘制可爱的招财猫

《使用Python绘制可爱的招财猫》招财猫,也被称为“幸运猫”,是一种象征财富和好运的吉祥物,经常出现在亚洲文化的商店、餐厅和家庭中,今天,我将带你用Python和matplotlib库从零开始绘制一... 目录1. 为什么选择用 python 绘制?2. 绘图的基本概念3. 实现代码解析3.1 设置绘图画

Python绘制土地利用和土地覆盖类型图示例详解

《Python绘制土地利用和土地覆盖类型图示例详解》本文介绍了如何使用Python绘制土地利用和土地覆盖类型图,并提供了详细的代码示例,通过安装所需的库,准备地理数据,使用geopandas和matp... 目录一、所需库的安装二、数据准备三、绘制土地利用和土地覆盖类型图四、代码解释五、其他可视化形式1.

如何用Python绘制简易动态圣诞树

《如何用Python绘制简易动态圣诞树》这篇文章主要给大家介绍了关于如何用Python绘制简易动态圣诞树,文中讲解了如何通过编写代码来实现特定的效果,包括代码的编写技巧和效果的展示,需要的朋友可以参考... 目录代码:效果:总结 代码:import randomimport timefrom math

基于人工智能的图像分类系统

目录 引言项目背景环境准备 硬件要求软件安装与配置系统设计 系统架构关键技术代码示例 数据预处理模型训练模型预测应用场景结论 1. 引言 图像分类是计算机视觉中的一个重要任务,目标是自动识别图像中的对象类别。通过卷积神经网络(CNN)等深度学习技术,我们可以构建高效的图像分类系统,广泛应用于自动驾驶、医疗影像诊断、监控分析等领域。本文将介绍如何构建一个基于人工智能的图像分类系统,包括环境

认识、理解、分类——acm之搜索

普通搜索方法有两种:1、广度优先搜索;2、深度优先搜索; 更多搜索方法: 3、双向广度优先搜索; 4、启发式搜索(包括A*算法等); 搜索通常会用到的知识点:状态压缩(位压缩,利用hash思想压缩)。

【WebGPU Unleashed】1.1 绘制三角形

一部2024新的WebGPU教程,作者Shi Yan。内容很好,翻译过来与大家共享,内容上会有改动,加上自己的理解。更多精彩内容尽在 dt.sim3d.cn ,关注公众号【sky的数孪技术】,技术交流、源码下载请添加微信号:digital_twin123 在 3D 渲染领域,三角形是最基本的绘制元素。在这里,我们将学习如何绘制单个三角形。接下来我们将制作一个简单的着色器来定义三角形内的像素