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

相关文章

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

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

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

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

【WebGPU Unleashed】1.1 绘制三角形

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

Flutter 进阶:绘制加载动画

绘制加载动画:由小圆组成的大圆 1. 定义 LoadingScreen 类2. 实现 _LoadingScreenState 类3. 定义 LoadingPainter 类4. 总结 实现加载动画 我们需要定义两个类:LoadingScreen 和 LoadingPainter。LoadingScreen 负责控制动画的状态,而 LoadingPainter 则负责绘制动画。

利用matlab bar函数绘制较为复杂的柱状图,并在图中进行适当标注

示例代码和结果如下:小疑问:如何自动选择合适的坐标位置对柱状图的数值大小进行标注?😂 clear; close all;x = 1:3;aa=[28.6321521955954 26.2453660695847 21.69102348512086.93747104431360 6.25442246899816 3.342835958564245.51365061796319 4.87

用Pytho解决分类问题_DBSCAN聚类算法模板

一:DBSCAN聚类算法的介绍 DBSCAN(Density-Based Spatial Clustering of Applications with Noise)是一种基于密度的聚类算法,DBSCAN算法的核心思想是将具有足够高密度的区域划分为簇,并能够在具有噪声的空间数据库中发现任意形状的簇。 DBSCAN算法的主要特点包括: 1. 基于密度的聚类:DBSCAN算法通过识别被低密

各个地区饮食结构的差异 第九篇

比如原来蛋自质吃太少了 消耗太多 亏空 太多 就会虚 所有的方案要有循证医学证据

PMP–一、二、三模–分类–14.敏捷–技巧–看板面板与燃尽图燃起图

文章目录 技巧一模14.敏捷--方法--看板(类似卡片)1、 [单选] 根据项目的特点,项目经理建议选择一种敏捷方法,该方法限制团队成员在任何给定时间执行的任务数。此方法还允许团队提高工作过程中问题和瓶颈的可见性。项目经理建议采用以下哪种方法? 易错14.敏捷--精益、敏捷、看板(类似卡片)--敏捷、精益和看板方法共同的重点在于交付价值、尊重人、减少浪费、透明化、适应变更以及持续改善等方面。

【python计算机视觉编程——8.图像内容分类】

python计算机视觉编程——8.图像内容分类 8.图像内容分类8.1 K邻近分类法(KNN)8.1.1 一个简单的二维示例8.1.2 用稠密SIFT作为图像特征8.1.3 图像分类:手势识别 8.2贝叶斯分类器用PCA降维 8.3 支持向量机8.3.2 再论手势识别 8.4 光学字符识别8.4.2 选取特征8.4.3 多类支持向量机8.4.4 提取单元格并识别字符8.4.5 图像校正

YOLOv8/v10+DeepSORT多目标车辆跟踪(车辆检测/跟踪/车辆计数/测速/禁停区域/绘制进出线/绘制禁停区域/车道车辆统计)

01:YOLOv8 + DeepSort 车辆跟踪 该项目利用YOLOv8作为目标检测模型,DeepSort用于多目标跟踪。YOLOv8负责从视频帧中检测出车辆的位置,而DeepSort则负责关联这些检测结果,从而实现车辆的持续跟踪。这种组合使得系统能够在视频流中准确地识别并跟随特定车辆。 02:YOLOv8 + DeepSort 车辆跟踪 + 任意绘制进出线 在此基础上增加了用户