当前位置: 首页 > wzjs >正文

网站毕业设计任务书外贸网站设计制作优化推广

网站毕业设计任务书,外贸网站设计制作优化推广,东莞网站建设推广多少钱,商标购买网商标hello这次真的是好久不见了,前段时间确实太忙,后台都忙到没时间看,对不住大家的热情,这期复刻两个 Nature Communications 绘图,主要都和弦图有关: 原图 1 复刻图 1 原图 2 复刻图 2 这次绘图使用我自己开…

hello这次真的是好久不见了,前段时间确实太忙,后台都忙到没时间看,对不住大家的热情,这期复刻两个 Nature Communications 绘图,主要都和弦图有关:

原图 1

复刻图 1

原图 2

复刻图 2

这次绘图使用我自己开发的弦图绘制工具和桑基图绘制工具,这些工具的fileexchange 链接:

  • 【弦图】https://www.mathworks.com/matlabcentral/fileexchange/116550-chord-chart
  • 【有向弦图】https://www.mathworks.com/matlabcentral/fileexchange/121043-digraph-chord-chart
  • 【桑基图】https://www.mathworks.com/matlabcentral/fileexchange/128679-sankey-plot

当然本次复刻结果的完整代码和数据也会放到下面这个gitee仓库,建议大家【直接去如下仓库】获取完整代码:

  • https://gitee.com/slandarer/PLTreprint

复刻一 : 有向弦图 + 桑基图

这幅图出自:Ji, M., Zhou, J., Li, Y. et al. Biodiversity of mudflat intertidal viromes along the Chinese coasts. Nat Commun 15, 8611 (2024). https://doi.org/10.1038/s41467-024-52996-x

可以看出复刻出的图的颜色和变量顺序有点出入,原文后面又调整了数据顺序,这里我们就不调整了直接画:首先直接进行数据导入和预处理:

% 数据预处理部分 ====================================
CList = [  1,201,117; 197,169,255;  78,149,241;247,191,142; 252,235, 79; 190,190,190]./255;
Data = readtable('Fig.4d.csv');
% 提取变量名和数值
nameList = Data.Region;
Data = Data(:, 2:end); 
dataMat = Data.Variables;

1 弦图绘制

fileexchange 下载的工具包里面有这个函数详细的用法,本账号搜弦图也能搜到很多基本使用教程这里不再详述,我们创建一个 figure 窗口,之后在左侧生成一个 axes 坐标区,然后几行代码就能绘制图像:

% 弦图绘图部分 ==========================================
figure('Units','normalized','Position',[.02,.05,.7,.85])
ax1 = axes('Parent', gcf, 'Position',[0, .11, .7, .8], 'NextPlot','add');
BCC=biChordChart(dataMat, 'Label',nameList, 'Arrow','on', 'CData',CList, ...'TickMode','Linear', 'LRadius',1.3);
% 刻度的设置要在draw()之前
% 刻度的紧密程度,数值越高刻度线数量越多
BCC.linearTickCompactDegree = 3.2;
% 是否开启次刻度线
BCC.linearMinorTick = 'on';
BCC=BCC.draw(); 
BCC.tickState('on')
BCC.tickLabelState('on')
% 设置字体、刻度线粗细
set(findobj('type', 'line'), 'LineWidth',1.5)
BCC.setFont('FontSize', 18)

再在右侧绘制一个渐变的桑基图即可,大部分设置都写了注释:
之后再通过annotation函数绘制连接两个图的线条。

2 桑基图绘制

% 桑基图绘图部分 =========================================
ax2 = axes('Parent', gcf, 'Position', [.7, .11, .23, .8], 'NextPlot','add');
links(1:5, 1) = nameList(1);
links(1:5, 2) = nameList(2:end);
links(1:5, 3) = num2cell(dataMat(2:end,1));
disp(links)
% 创建桑基图对象
SK=SSankey(links(:,1), links(:,2), links(:,3));
% 设置配色
SK.ColorList = CList;
% 修改链接颜色渲染方式
% 'left'/'right'/'interp'(default)/'map'/'simple'
SK.RenderingMethod='interp'; 
% 设置方块横向宽度和竖向间隔
SK.Sep=.02;
SK.BlockScale = .1;
SK.draw()% 修饰一下
for i=1:6% 设置块线条粗细,设置字体SK.setBlock(i,'EdgeColor',[0,0,0], 'LineWidth',1)SK.setLabel(i,'FontSize',18, 'FontName','default')
end
% 设置最左侧方块的文字旋转90度
SK.setLabel(1,'Rotation',90, 'HorizontalAlignment','center', ...'VerticalAlignment','bottom')
annotation(gcf, 'line', [.59 .68], [.544 0.575], 'LineWidth',1.5, 'LineStyle','--');


复刻二 : 无向弦图

这篇来自:Kong, L., Feng, Y., Zheng, R. et al. Interspecies hydrogen transfer between cyanobacteria and symbiotic bacteria drives nitrogen loss. Nat Commun 16, 5078 (2025). https://doi.org/10.1038/s41467-025-60327-x

这次我们提前将xlsx内的数据进行了排序,还是先读取数据:

% 数据预处理部分 ====================================
Data = readtable('41467_2025_60327_MOESM6_ESM.xlsx');
% 提取变量名和数值
rowName = Data.Taxon_name;
Data = Data(:, 2:end); 
colName = Data.Properties.VariableNames;
Data = Data.Variables;

1 弦图绘制

% 绘图部分 ==========================================
figure('Units','normalized', 'Position',[.02,.05,.8,.85])
CC = chordChart(Data, 'colName',colName, 'rowName', rowName, ...'TickMode','linear' ,'Sep',1/80, 'LRadius', 1.32, 'OSqRatio',75/100);
% 刻度的设置要在draw()之前
% 刻度的紧密程度,数值越高刻度线数量越多
CC.linearTickCompactDegree = 1.7;
% 是否开启次刻度线
CC.linearMinorTick = 'on';
CC = CC.draw();
% 显示刻度和数值
CC.tickState('on')
CC.tickLabelState('on')

2 标签隐藏

可以看出很多标签互相遮挡,我们尝试隐藏:

% 设置字体、刻度线粗细并把 1 号和 5:10 号标签隐藏
set(findobj('type', 'line'), 'LineWidth',1.5)
CC.setFont('FontSize', 18)
set(CC.nameFHdl([1, 5:10]), 'Color', 'none')
set(CC.nameFHdl(7), 'Color', 'k', 'String', 'Others')

3 配色修改

对每个方块和弦进行颜色修改:

% 修改配色 ==========================================
colCList = [204,103, 99; 232,183,183; 252,168,133; 206, 96, 16;  61,114,176;   1,  7,172]./255;
rowCList = [ 32,180,  2;  95,167,255;  85, 77,150;253,224,169; 215,234,209; 177,229,253;255,239,206; 163,184,209; 207,225,226;219,210,234]./255;
% 修改上方方块颜色
for i = 1:length(colName)CC.setSquareT_N(i, 'FaceColor', colCList(i,:))
end
% 修改下方方块颜色和弦配色
for i = 1:length(rowName)CC.setSquareF_N(i, 'FaceColor', rowCList(i,:))for j = 1:length(colName)CC.setChordMN(i,j, 'FaceColor',rowCList(i,:), 'FaceAlpha',.4)end
end

4 绘制图例

因为有些标签被隐藏,为了说明什么是什么,为这些块添加图例:

% 绘制图例 ==========================================
patchHdl = [];
for i = [10:-1:5, 1]patchHdl(end + 1) = fill([10,11,12],[10,13,13], ...rowCList(i,:), 'EdgeColor', 'none');
end
lgdHdl = legend(patchHdl, rowName([10:-1:5, 1]), 'FontSize',14, 'Box','off');
lgdHdl.Position = [.76,.11,.167,.27];
lgdHdl.ItemTokenSize = [18,8];


以上即为完整代码,但是没有数据的话没法运行,数据和完整代码已经放在以下gitee仓库:

  • https://gitee.com/slandarer/PLTreprint

文章转载自:

http://lDgvA6zw.ppLLj.cn
http://BUNIbRIt.ppLLj.cn
http://DkmdZGuh.ppLLj.cn
http://OW6swPzT.ppLLj.cn
http://FX5xyHk4.ppLLj.cn
http://WLr4xjCy.ppLLj.cn
http://aPOlTz7H.ppLLj.cn
http://CppxLlkf.ppLLj.cn
http://HgEXjJlg.ppLLj.cn
http://mckzCuKy.ppLLj.cn
http://mP7zPSg2.ppLLj.cn
http://ok3HXizX.ppLLj.cn
http://CWJL9nMT.ppLLj.cn
http://p2iMiaZE.ppLLj.cn
http://ayjGp1YA.ppLLj.cn
http://32K9zgMl.ppLLj.cn
http://rFdV9QKx.ppLLj.cn
http://YpGqfA03.ppLLj.cn
http://z69rc0xm.ppLLj.cn
http://yQ9fGDtq.ppLLj.cn
http://smIStjCi.ppLLj.cn
http://l5wzAUEv.ppLLj.cn
http://pBjFFEdO.ppLLj.cn
http://YVaLy1dX.ppLLj.cn
http://80cc8GSh.ppLLj.cn
http://GtdvWTTy.ppLLj.cn
http://AinPIttS.ppLLj.cn
http://reVYqqsp.ppLLj.cn
http://bhiIxZcW.ppLLj.cn
http://gbAdqsXT.ppLLj.cn
http://www.dtcms.com/wzjs/693180.html

相关文章:

  • 网站开发学习方法北京住房投资建设中心网站首
  • 网站系统设计目标wordpress插件 收费下载资源
  • html5 网站模板 米交通信用网站建设
  • 伴奏网站防盗是怎么做的销售网站开发
  • 通化网站建设公司做网站商业欺骗赔多少
  • 做微课的网站有哪些方面wordpress 5.2.2安装要求
  • 两学一做网站飘窗网站建设400电话
  • 中国建设银行青浦支行网站软件工程师级别
  • 哪些网站是做快消品的网站 关键字
  • 专业做网站登录asp.net 做网站
  • 微信小程序在哪里制作河南seo
  • 网站建设大全厦门 建网站
  • 衣服网站建设规划书it运维服务
  • html购物网站怎么做网络架构图用什么软件画
  • 兰州网站seo外包怎么样建立自己的网站
  • 网站建设方案及报价单哪里有整站优化
  • 区块链开发教程宁波seo推广公司排名
  • 上海松一网站建设绝对域名做网站
  • 只做鞋子的网站免费编程网站
  • 自己做的网站怎么改背景图wordpress链接提交
  • 网站排名优化和竞价赤峰市网站建设
  • 做网站链接怎么做怎么创建自己的网站平台
  • asp 个人网站上海高端建站网站
  • 河北网络公司网站建设网站建设基础报告
  • 网站模板带后台学动漫设计可以做什么工作
  • 域名制作网站吗网站前面的小图标怎么做
  • 如何批量做网站wordpress 登录状态
  • 网站建设主要产品嘉定网站建设公司
  • 深圳网站制作公司怎么样wordpress注册模板
  • 东莞网站建设推广有哪些ui网站开发