【數學建模國獎速成系列】優秀論文繪圖復現代碼(二)

文章目錄

  • 國獎論文繪圖復現代碼,可直接運行
  • 柱狀圖
  • 橫向柱狀圖
  • 分組柱狀圖
  • 堆疊柱狀圖
  • 堆疊柱狀圖2
  • 三維柱狀圖
  • 完整復現代碼

國獎論文繪圖復現代碼,可直接運行

數模比賽的繪圖是非常重要得,這篇文章給大家分享我自己復現的國獎優秀論文的代碼,基于Matalab來實現,可以直接運行出圖。之前的文章也有分享【折線圖】的繪制,這篇文章主要分享【柱狀圖】。
在這里插入圖片描述
在這里插入圖片描述

【數學建模美賽速成系列】O獎論文繪圖復現代碼

柱狀圖

請添加圖片描述

%% 柱狀圖
clc;clear;close all;
% load('color_list.mat')
% color=color_list(1:6,:);
color=[0.717647058823529,0.682352941176471,0.741176470588235;...0.807843137254902,0.792156862745098,0.890196078431373;0.580392156862745,...0.525490196078431,0.729411764705882;0.392156862745098,0.345098039215686,...0.470588235294118;0.560784313725490,0.533333333333333,0.741176470588235;...0.372549019607843,0.282352941176471,0.600000000000000;0.0156862745098039,...0.0196078431372549,0.0156862745098039];% 顏色數據% color=[0.741176470588235,0.729411764705882,0.725490196078431;0.525490196078431,...
%     0.623529411764706,0.752941176470588;0.631372549019608,0.803921568627451,...
%     0.835294117647059;0.588235294117647,0.576470588235294,0.576470588235294;...
%     0.0745098039215686,0.407843137254902,0.607843137254902;0.454901960784314,...
%     0.737254901960784,0.776470588235294;0.0156862745098039,0.0196078431372549,0.0156862745098039];% 顏色y=[28,34,18,13];%柱狀圖縱坐標
x=[1,2,3,4];     %柱狀圖橫坐標%%初始化顯示位置 [x,y,dx,dy] 從 x,y坐標開始,dx,dy為沿升的長度
figure('Units', 'pixels', ...'Position', [100 100 460 275]);width=0.7; %柱狀圖寬度 0~1
for  i=1:length(y)%bar(i,y(i),width) width 柱狀圖寬占比  ,FaceColor 柱狀圖填充顏色 ,EdgeColor 柱狀圖邊緣顏色% LineWidth  邊緣線寬 set(bar(i,y(i),width),'FaceColor',color(i,:),'EdgeColor',color(i+3,:),'LineWidth',2)hold on
end%繪制虛線
ylabel('Time on Warm Floor(%)')xticks([1 2 3 4]);
xticklabels({'objedct1','objedct2','objedct3','objedct4'})
box off
%坐標軸字體和大小
set(gca,"FontName","Times New Roman","FontSize",12,"LineWidth",2)
title("TPT Timecourse","FontName","Times New Roman","FontSize",12,"LineWidth",2);

橫向柱狀圖

在這里插入圖片描述

%%  橫向柱狀圖
clc;clear;close all;
% load('color_list.mat')
% color=color_list(1:6,:);
color=[    0.1804    0.7804    0.78820.7137    0.6353    0.87060.3529    0.6941    0.93731.0000    0.7255    0.5020];% 顏色數據y=[28,34,18,13];%柱狀圖縱坐標
x=[1,2,3,4];     %柱狀圖橫坐標%%初始化顯示位置 [x,y,dx,dy] 從 x,y坐標開始,dx,dy為沿升的長度
figure('Units', 'pixels', ...'Position', [100 100 500 305]);width=0.7; %柱狀圖寬度 0~1
for  i=1:length(y)%bar(i,y(i),width) width 柱狀圖寬占比  ,FaceColor 柱狀圖填充顏色 ,EdgeColor 柱狀圖邊緣顏色% LineWidth  邊緣線寬 set(barh(i,y(i),width),'FaceColor',color(i,:),'EdgeColor',color(i,:),'LineWidth',2)hold on
end%繪制虛線
xlabel('Time on Warm Floor(%)')yticks([1 2 3 4]);
yticklabels({'objedct1','objedct2','objedct3','objedct4'})box off
%坐標軸字體和大小
set(gca,"FontName","Times New Roman","FontSize",12,"LineWidth",2)title("TPT Timecourse","FontName","Times New Roman","FontSize",12,"LineWidth",2);set(gca,'xgrid','on');

分組柱狀圖

在這里插入圖片描述

%%  分組柱狀圖
clc;clear;close all;
color=[0.741176470588235,0.729411764705882,0.725490196078431;0.525490196078431,...0.623529411764706,0.752941176470588;0.631372549019608,0.803921568627451,...0.835294117647059;0.588235294117647,0.576470588235294,0.576470588235294;...0.0745098039215686,0.407843137254902,0.607843137254902;0.454901960784314,...0.737254901960784,0.776470588235294;0.0156862745098039,0.0196078431372549,0.0156862745098039];% 顏色1data=[1.5,4,5;18,24,25;6,7,8];
b=bar(data);hold on
erro_data=[1,1,3;6,0.5,1;0.2,0.1,2];ax = gca;
for i = 1 : size(data,2)x_data(:, i) = b(i).XEndPoints'; 
end% for i=1:3
% errorbar(x_data(:,i),data(:,i),erro_data(:,i),'LineStyle', 'none','Color',color(i+3,:) ,'LineWidth', 2,'CapSize',18)
% endax.YLim=[0,30];
for i =1:3
b(i).FaceColor = color(i,:);
b(i).EdgeColor= color(i+3,:);
b(i).LineWidth=1.5;
end
ax.XTickLabels ={'CT', 'WT', 'RWD'};set(gca,"FontName","Times New Roman","FontSize",12,"LineWidth",1.2)% box off
legend('Object1','Object2','Object3')%% 分組柱狀圖配色2
clc;clear;close all
color=[0.635294117647059,0.168627450980392,0.168627450980392;0.462745098039216,0.121568627450980,0.117647058823529;0,0,0];% 顏色1data=[1.5,4,5;18,24,25;6,7,8];
b=bar(data);
hold on
erro_data=[1,1,3;6,0.5,1;0.2,0.1,2];
ax = gca;for i = 1 : size(data,2)x_data(:, i) = b(i).XEndPoints'; 
end
for i=1:3
errorbar(x_data(:,i),data(:,i),erro_data(:,i),'LineStyle', 'none','Color','k' ,'LineWidth', 2,'CapSize',18)
endax.YLim=[0,30];
for i =1:3
b(i).FaceColor = color(i,:);
b(i).EdgeColor= 'k';
b(i).LineWidth=1.5;
end
legend('data1','data2','data3')
ax.XTickLabels ={'CT', 'WT', 'RWD'};
set(gca,"FontName","Times New Roman","FontSize",14,"LineWidth",2)
box off

堆疊柱狀圖

在這里插入圖片描述

clc;clear;close all;
color=[0.501960784313726,0.670588235294118,0.737254901960784;0.996078431372549,0.827450980392157,0.482352941176471;...0.737254901960784,0.490196078431373,0.709803921568628];
data=[1.5,2.5,1;18,6,1;6,1,1;6,1,1];
erro_data=[1,1,3;6,0.5,1;0.2,0.1,2;0.2,0.1,2];
b=bar(data,0.6,'stacked');
hold on
for i = 1 : size(data,2)x_data(:, i) = b(i).XEndPoints'; 
end
errorbar([],[cumsum(data')]',[],erro_data,'LineStyle', 'none','Color', [0,0,0], 'LineWidth', 1,'CapSize',18)
hold on
ax = gca;
for i =1:3
b(i).FaceColor = color(i,:);
b(i).LineWidth=1;
end
ax.YLim=[0,30];
%x軸范圍
% %x軸標簽
ax.XTickLabels ={'CT', 'WT', 'RWD','RA'};
ax.YTick = [0,10,20,30];
ax.YTickLabels={'0', '10', '20','30'} ;
%y軸范圍
box off
%坐標軸字體和大小
ylabel('index')
set(gca,"FontName","Times New Roman","FontSize",14,"LineWidth",2)
title({'My';'Picture' },"FontName","Times New Roman","FontSize",14,"LineWidth",2);
legend('Ana','Oth','Met')
legend('boxoff') %圖例框消失

堆疊柱狀圖2

在這里插入圖片描述

clc;clear;close all;
color=[0.247058823529412,0.305882352941177,0.560784313725490;0.466666666666667,...0.470588235294118,0.682352941176471;0.686274509803922,0.737254901960784,...0.874509803921569;0.858823529411765,0.901960784313726,0.956862745098039];
data=[19.3,31.6,34.4,14.6;43.4,32.7,16.4,7.5;31.5,30.2,25,13.3;37.1,26.2,28,8.3];b=bar(data,0.6,'stacked');
hold on
% % errorbar([],[cumsum(data')]',[],erro_data,'LineStyle', 'none','Color', [0,0,0], 'LineWidth', 1,'CapSize',18)
% hold on
ax = gca;
for i =1:4
b(i).FaceColor = color(i,:);
b(i).EdgeColor= color(i,:);
b(i).LineWidth=1;
end
ax.YLim=[0,100];
%x軸范圍
% %x軸標簽
ax.XTickLabels ={'White', 'Black', 'Hispanic',' American'};
ax.YTick = [0:20:100];
ax.YTickLabels={'0', '20', '40','60','80','100'} ;
%y軸范圍
box off
%坐標軸字體和大小
ylabel('index')
set(gca,"FontName","Times New Roman","FontSize",14,"LineWidth",2)
title({'My';'Picture' },"FontName","Times New Roman","FontSize",14,"LineWidth",2);

三維柱狀圖

在這里插入圖片描述

clc;clear;close all
color=[0.501960784313726,0.670588235294118,0.737254901960784;0.996078431372549,0.827450980392157,0.482352941176471;...0.737254901960784,0.490196078431373,0.709803921568628];
data=[19.3,31.6,34.4,14.6;43.4,32.7,16.4,7.5;31.5,30.2,25,13.3]';
h=bar3(data);
for i=1:3h(1, i).FaceColor=color(i,:);
end
xticklabels({'auto','b','c'})
yticklabels({'b','d','e'})
hold on
title('title')
zlabel('誤差')
ax = gca;
set(gca,"FontSize",12,"LineWidth",1.5)
box off
%%
clc;clear;close all
color=[   0.541176470588235   0.694117647058824   0.4862745098039220.909803921568627   0.772549019607843   0.4196078431372550.952941176470588   0.635294117647059   0.388235294117647];data=[19.3,31.6,34.4,14.6;43.4,32.7,16.4,7.5;31.5,30.2,25,13.3]';
h=bar3(data,0.7);
for i=1:3h(1, i).FaceColor=color(i,:);
end
xticklabels({'auto','b','c'})
yticklabels({'b','d','e'})
hold on
title('title')
zlabel('誤差')
ax = gca;
set(gca,"FontSize",12,"LineWidth",1.5)
box off

完整復現代碼

在這里插入圖片描述
在這里插入圖片描述

另外國獎復現代碼還包括:

  • 折線圖
  • 多根折線圖
  • 帶誤差棒的折線圖
  • 單個誤差帶的折線圖
  • 多個帶誤差帶的折線圖
  • 箱線圖
  • 熱圖
  • 矩陣散點圖
  • 三維圖
  • 雙軸圖

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

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

相關文章

GitLab CVE-2024-12444 安全漏洞解決方案

本文分享極狐GitLab 補丁版本 17.11.1, 17.10.5, 17.9.7 的詳細內容。這幾個版本包含重要的缺陷和安全修復代碼,我們強烈建議所有私有化部署用戶應該立即升級到上述的某一個版本。對于極狐GitLab SaaS,技術團隊已經進行了升級,無需用戶采取任…

隨機微分方程(SDE):股票價格模型、利率模型的構建

隨機微分方程(SDE):股票價格模型、利率模型的構建 一、隨機微分方程(SDE)基礎:從確定性到隨機性的擴展 1. 定義與一般形式 隨機微分方程(SDE)是包含布朗運動(隨機項&am…

【MCP Node.js SDK 全棧進階指南】高級篇(1):MCP多服務器協作架構

隨著業務規模的不斷擴大和系統復雜度的提升,單一服務器架構往往無法滿足高并發、高可用性和彈性擴展的需求。在MCP生態系統中,多服務器協作架構成為構建大規模應用的必然選擇。本文將深入探討MCP TypeScript-SDK在多服務器環境下的部署、協作和管理,以及如何構建高可用、高性…

git 修改用戶名和郵箱

在 Git 中修改用戶名和郵箱地址是常見的任務,這可以確保你的提交記錄使用正確的身份信息。你可以通過簡單的命令來完成這一操作。 全局配置 修改全局用戶名 要修改全局的用戶名,請執行以下命令: git config --global user.name "New…

[算法學習]——通過RMQ與dfs序實現O(1)求LCA(含封裝板子)

每周五篇博客:(3/5) 碎碎念 其實不是我想多水一篇博客,本來這篇是歐拉序的博客,結果dfs序也是可以O1求lca的,而且常數更優,結果就變成這樣了。。。 前置知識 [算法學習]——dfs序 思想 分…

spark local模式

Spark Local 模式是一種在單臺機器上運行 Spark 應用程序的模式,無需搭建分布式集群,適合開發調試、學習以及運行小規模數據處理任務。以下為你詳細介紹該模式: 特點 簡易性:無需額外配置分布式集群,在單機上就能快速…

用 RxSwift 實現 UITableView 的響應式綁定(超實用示例)

目錄 前言 一、環境準備 1.安裝 RxSwift 和 RxCocoa 2.導入模塊 二、實現一個簡單的UITableView 1.實現一個簡單的 UITableView 1.實現步驟 1.我們聲明一個ViewModel 2.ViewModel和UITableView 綁定 2.實現 UITableView 的代理方法 三、處理點擊事件 前言 在 iOS 開發…

【C++】通過紅黑樹封裝map和set

前言: 通過之前的學習,我們已經學會了紅黑樹和map、set。這次我們要實現自己的map和set,對,使用紅黑樹進行封裝! 當然,紅黑樹內容這里就不在贅述,我們會復用紅黑樹的代碼,所以先將…

非凸科技受邀出席AI SPARK活動,共探生成式AI驅動金融新生態

4月19日,由AI SPARK社區主辦的“生成式AI創新與應用構建”主題沙龍在北京舉行。活動聚焦生成式AI的技術突破與產業融合,圍繞大模型優化、多模態應用、存內計算等前沿議題展開深度探討。非凸科技受邀出席并發表主題演講,深入解析金融垂直大模型…

【Java IO流】IO流詳解

參考筆記:【Java基礎-3】吃透Java IO:字節流、字符流、緩沖流_javaio-CSDN博客 目錄 1.IO流簡介 1.1 什么是IO流? 1.2 IO流的分類 1.3 字符流和字節流的其他區別 1.4 Java IO流體系圖 2.字符編碼詳解 3. Java的char類型與 Unicode、U…

驅動開發系列56 - Linux Graphics QXL顯卡驅動代碼分析(三)顯示模式設置

一:概述 如之前介紹,在qxl_pci_probe 中會調用 qxl_modeset_init 來初始化屏幕分辨率和刷新率,本文詳細看下 qxl_modeset_init 的實現過程。即QXL設備的顯示模式設置,是如何配置CRTC,Encoder,Connector 的以及創建和更新幀緩沖區的。 二:qxl_modeset_init 分析 in…

Vue3開發常見性能問題知多少

文章目錄 1 常見性能優化瓶頸及原因1.1 響應式數據的過度使用1.2 虛擬 DOM 的頻繁更新1.3 組件渲染的冗余1.4 大列表渲染的性能問題1.5 計算屬性和偵聽器的濫用1.6 事件處理函數的頻繁綁定1.7 異步組件的加載性能2 解決方案與優化技巧2.1 合理使用響應式數據2.2 優化虛擬 DOM 更…

Rust Ubuntu下編譯生成環境win程序踩坑指南

前言: 1,公司要給一線搞一個升級程序,需要在win下跑。 之前都是找開發總監幫忙,但是他最近比較忙。就讓我自己搞。有了下文.。說來慚愧,之前寫過一篇ubuntu下編譯windows的文章。里面的demo就一句話 fuck world。依賴…

openharmony 4.1 運行busybox工具包(保姆教程)

1.下載 鏈接:Index of /downloads/binaries 進入其中后,找到 挑選適合你系統架構的版本,例如我這邊是 https://busybox.net/downloads/binaries/1.31.0-defconfig-multiarch-musl/busybox-armv7r 右鍵復制鏈接 打開迅雷,直接粘…

算法四 習題 1.3

數組實現棧 #include <iostream> #include <vector> #include <stdexcept> using namespace std;class MyStack { private:vector<int> data; // 用于存儲棧元素的數組public:// 構造函數MyStack() {}// 入棧操作void push(int val) {data.push_back…

GD32F407單片機開發入門(十七)內部RTC實時時鐘及實戰含源碼

文章目錄 一.概要二.RTC基本特點三.GD32單片機RTC內部結構圖四.配置一個RTC走秒例程五.工程源代碼下載六.小結 一.概要 RTC&#xff08;Real-Time Clock&#xff09;是一種用于追蹤和記錄實際時間的時鐘系統。RTC模塊提供了一個包含日期&#xff08;年/月/日&#xff09;和時間…

新能源汽車運動控制器核心芯片選型與優化:MCU、DCDC與CANFD協同設計

摘要&#xff1a;隨著新能源汽車產業的迅猛發展&#xff0c;汽車運動控制器的性能和可靠性面臨著更高的要求。本文深入探討了新能源汽車運動控制器中MCU&#xff08;微控制單元&#xff09;、DCDC電源管理芯片和CANFD總線通信芯片的選型要點、優化策略及其協同設計方案。通過綜…

2.maven 手動安裝 jar包

1.背景 有的時候&#xff0c;maven倉庫無法下載&#xff0c;可以手動安裝。本文以pentaho-aggdesigner-algorithm-5.1.5-jhyde.jar為例。 2.預先準備 下載文件到本地指定位置。 2.1.安裝pom mvn install:install-file \-Dfile/home/wind/tmp/pentaho-aggdesigner-5.1.5-jh…

OpenCV 圖形API(75)圖像與通道拼接函數-----將 4 個單通道圖像矩陣 (GMat) 合并為一個 4 通道的多通道圖像矩陣函數merge4()

操作系統&#xff1a;ubuntu22.04 OpenCV版本&#xff1a;OpenCV4.9 IDE:Visual Studio Code 編程語言&#xff1a;C11 算法描述 由4個單通道矩陣創建一個4通道矩陣。 該函數將多個矩陣合并為一個單一的多通道矩陣。也就是說&#xff0c;輸出矩陣的每一個元素都是輸入矩陣對…

AI日報 · 2025年05月02日 | 再見GPT-4!OpenAI CEO 確認 GPT-4 已從 ChatGPT 界面正式移除

1、OpenAI CEO 確認 GPT-4 已從 ChatGPT 界面正式移除 在處理 GPT-4o 更新問題的同時&#xff0c;OpenAI CEO Sam Altman 于 5 月 1 日在 X 平臺發文&#xff0c;正式確認初代 GPT-4 模型已從 ChatGPT 主用戶界面中移除。此舉遵循了 OpenAI 此前公布的計劃&#xff0c;即在 4 …