MATLAB | 繪圖復刻(二十三)| Nature同款雷達圖

Hello 真的好久不見,這期畫一個Nature同款雷達圖,原圖是下圖中的i圖,長這樣:

本圖出自:

  • Pan, X., Li, X., Dong, L. et al. Tumour vasculature at single-cell resolution. Nature 632, 429–436 (2024). https://doi.org/10.1038/s41586-024-07698-1

本期復刻效果:

本期說是繪圖復刻其實本質上是對很久之前寫的雷達圖工具的一次功能開發,雷達圖工具可以在 fileexchange 找到:

  • https://www.mathworks.com/matlabcentral/fileexchange/126450-radar-chart

當然我會把工具和完整代碼一并放入gitee平臺并把鏈接在文末分享。先開始正文,首先給個該工具的基本用法:

X=randi([2,8],[4,7])+rand([4,7]); % 隨機生成數據
RC=radarChart(X); % 生成雷達圖對象
RC.PropName={'建模','實驗','編程','總結','撰寫','創新','摸魚'};
RC.ClassName={'同門A','同門B','同門C','同門D'};
RC=RC.draw(); % 畫圖
RC=RC.legend(); % 添加圖例

可以看到使用方法非常簡單。
以下開始復刻 Nature繪圖:

正文

0.數據準備和對象創建

figure('Position',[600,200,600,600]);Data1 = rand([2,10]);
RC = radarChart(Data1);

1.基礎設置和繪圖

包括刻度范圍,背景所占范圍,初始角度,標簽是順時針還是逆時針排布等信息,以及變量名和配色。

RC.RLim = [0,1];         % 數據范圍設置為 0,1            Set the data range to be between 0 and 1
RC.RTick = [0,.5,1];     % 半徑刻度 0,.5,1              Set radius ticks at 0, 0.5, and 1
RC.RRange = [.1,1];      % 背景所占的比例范圍            Set the range for the background (0.1 to 1)
RC.Rotation = pi/2;      % 初始角度                     Set the initial angle
RC.ThetaDir = 'reverse'; % 標簽排布方向(逆時針還是順時針) Set the direction of the label arrangement% 設置變量名
RC.ClassName = {'Stalk-like','Tip-like'};
RC.PropName = num2cell('A':'J'); 
% RC.PropName = {'A','B','C','D','E','F','G','H','I','J'}
RC.CList = [151,125,154; 179,97,97]./255;RC = RC.draw();


2.修改背景和刻度線及標簽

% 設置一下背景線條粗細等屬性
RC.setPropLabel('FontSize',21,'FontName','Times New Roman');
RC.setRTick('LineWidth',2);
RC.setRLabel('Color','none');
RC.setBkg('EdgeColor','none');
RC.setThetaTick('LineWidth',2);
RC.setType('Both')


2.修改圖形并添加圖例

RC.setPatchN(1, 'LineWidth',5, 'MarkerSize',8);
RC.setPatchN(2, 'LineWidth',5, 'MarkerSize',8);RC = RC.legend();
RC.setLegend('FontSize',21, 'FontName','Times New Roman');

本文完整代碼還將被放在gitee倉庫:

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

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/diannao/98251.shtml
繁體地址,請注明出處:http://hk.pswp.cn/diannao/98251.shtml
英文地址,請注明出處:http://en.pswp.cn/diannao/98251.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

React Hooks UseCallback

開發環境:React Native Taro TypescriptuseCallback的用途,主要用于性能優化:1 避免不必要的子組件重渲染:當父組件重渲染時,如果傳遞給子組件的函數每次都是新創建的,即使子組件使用了 React.memo&#…

使用SD為VFX制作貼圖

1.制作遮罩 Gradient Linear 1 通過Blend 可以混合出不同遮罩 2.徑向漸變 Shape 節點 , 非常常用 色階調節灰度和漸變過渡 曲線能更細致調節灰度 色階還可以反向 和圓盤混合 就是 菲涅爾Fresnel 3. 屏幕后處理漸變 第二種方法 4. 極坐標 Gradient Circular Threshold 閾值節…

面經分享二:Kafka、RabbitMQ 、RocketMQ 這三中消息中間件實現原理、區別與適用場景

一、實現原理 (Implementation Principle) 1. Apache Kafka:分布式提交日志 (Distributed Commit Log) Kafka 的核心設計理念是作為一個分布式、高吞吐量的提交日志系統。它不追求消息的復雜路由,而是追求數據的快速、持久化流動。 存儲結構:…

Android開發——初步了解AndroidManifest.xml

Android開發——初步了解AndroidManifest.xml ? AndroidManifest.xml 是 Android 應用的清單文件,包含了應用的包名、組件聲明、權限聲明、API 版本信息等。它是 Android 應用的“說明書”,系統通過它了解應用的結構和行為。咱們的AndroidManifest文件實…

ecplise配置maven插件

1.下載maven 2.配置系統變量 MAVEN_HOME: E:\CODE\MAVEN\apache-maven-3.0.4 3.配置環境變量 %MAVEN_HOME%\bin 4.cmd:mvn -version 注1 如圖所示為:成功 注1:配置成功的前提是要有配置JAVA_HOME,如果沒有配置,則…

Vue 項目性能優化實戰

性能優化有一套「發現 → 定位 → 解決」的閉環方法論。本文以真實項目為藍本,從編碼階段到上線監控,給出一條可落地的 Vue 性能優化路線圖。 一、量化指標定位性能瓶頸 任何優化之前先用量化證據鎖死問題。 Lighthouse 一鍵跑分:首屏、交互、…

阿里云智能多模態大模型崗三面面經

阿里云智能多模態大模型崗三面面經(詳細問題感受) 最近面試了 阿里云智能集團 - 多模態大模型崗位,三輪技術面,整體體驗還不錯。問題整體偏常規,但對項目的追問比較細致。這里整理一下完整面經,供準備類似崗…

C++ 條件變量 通知 cv.notify_all() 先釋放鎖再通知

簡短的回答是:先釋放鎖,再通知(notify_one 或 notify_all)通常是更優的選擇。 雖然標準允許兩種順序,但“先解鎖,后通知”的性能通常更好。 下面我們來詳細解釋原因和兩種方式的區別。 先通知,后…

案例精選 | 南京交通職業技術學院安全運營服務建設標桿

導語 隨著教育信息化的深入推進,高校已成為數字化轉型的前沿陣地。然而,伴隨著教學、科研、管理等業務系統的全面上云與互聯互通,高校網絡環境日益復雜,面臨的網絡安全威脅也愈發嚴峻。勒索病毒、數據泄露、APT攻擊等安全事件頻發…

AI安全必修課:模型偏見檢測與緩解實戰

點擊 “AladdinEdu,同學們用得起的【H卡】算力平臺”,H卡級別算力,80G大顯存,按量計費,靈活彈性,頂級配置,學生更享專屬優惠。 引言:AI偏見——看不見的技術債務 2018年&#xff0c…

Trae + MCP : 一鍵生成專業封面

每日一句 人生只有走出來的美麗, 沒有等出來的輝煌。 目錄 每日一句 前言 一.核心工具與優勢解析 二.操作步驟:從配置到生成廣告封面 前期準備:確認環境與工具版本 第一步. 獲取配置代碼 第二步:在 Trae 中導入 MCP 配置…

Eureka與Nacos的區別-服務注冊+配置管理

Eureka與Nacos的區別-服務注冊配置管理 以下是 Eureka 和 Nacos 的核心區別對比,幫你清晰理解它們的不同定位和特性: ?1. 核心定位? ?Eureka:?? ?純服務注冊與發現中心,源自 Netflix,核心功能是維護服務實例清單…

這才是真正懂C/C++的人,寫代碼時怎么區分函數指針和指針函數?

1.介紹 很多初中級開發者常常在這兩個術語之間感到困惑,分不清它們的定義、語法和應用場景,從而在實際編程中埋下隱患。本文旨在撥開迷霧,從概念定義、語法解析、核心區別及實戰應用四個維度,對函數指針與指針函數進行一次全面、深入的辨析,幫助您徹底厘清這兩個概念,并…

Go基礎(④指針)

簡單示例package mainimport "fmt"func main() {var num int 100var p *int &num // 指向int類型的指針fmt.Println(*p) // 解引用,輸出 100*p 200 // 通過指針修改原變量fmt.Println(num) // 輸出 200 }package mainimport "fmt…

java社交小程序源碼支持APP多端springboot部署與功能模塊詳解

構建一個支持 多端訪問、實時互動、商城交易 的綜合型應用,已成為眾多企業和開發團隊的共同目標。由 寵友信息技術有限公司 打造的 友貓社區,正是基于 Spring Boot 技術棧 的全端解決方案,既能支持 微信小程序、APP、PC管理后臺,又…

代理連接性能優化:提升網絡效率的關鍵技術與實踐

在當今數字化時代,代理連接性能優化已成為網絡架構設計中的關鍵環節。本文將深入探討如何通過技術手段提升代理服務器的響應速度、穩定性和資源利用率,幫助讀者構建高效可靠的代理網絡體系。 代理連接性能優化:提升網絡效率的關鍵技術與實踐 …

Rust 元組

簡介 元組可以由多種類型組成,長度固定。 創建元組 // 固定類型 let tup1: (i32, f64, u8) (500, 8.8, 1);// 不固定類型 let tup2 (500.99, 8.8, 1, 9.99);println!("{}", tup2.0);用模式匹配解構元組 let tup (500.99, 8.8, 1, 9.99); let (x, y…

突破閉集限制:3D-MOOD 實現開集單目 3D 檢測新 SOTA

【導讀】 單目 3D 目標檢測是計算機視覺領域的熱門研究方向,但如何在真實復雜場景中識別“未見過”的物體,一直是個難題。本文介紹的 3D-MOOD 框架,首次提出端到端的開集單目 3D 檢測方案,并在多個數據集上刷新了 SOTA。 目錄 …

Python爬蟲數據清洗實戰:從雜亂無章到整潔可用

小伙伴們,做爬蟲最頭疼的不是抓數據,而是抓回來那一堆亂七八糟的內容!價格里混著符號、日期格式千奇百怪、還有重復和缺失的值,看著就頭大。別慌,咱們用Python幾招就能搞定。Pandas處理表格數據是真香,正則…

打工人日報#20250906

打工人日報#20250906 周六了! 今天出門讀者特別痛,本來都想爽約了,不過忍下來了了,現在看來很值得! 不過還是要好好吃早餐、和熱水! 閱讀 《小米創業思考》 第一章 奇跡時代 看完了 就是快呀 好的產品 好的…