【實驗數據處理matlab程序】程序1:繪制figure文件中曲線的RMS值

立意

在本課題所涉及的實驗中,需要將2個拉線式位移傳感器中的數據收集并處理,在此基礎上求解相應的速度

主要功能

  1. 針對一個figure文件中僅包含一個plot,且該plot中包含指定數目的曲線,求這些曲線的RMS值;
  2. 針對一個figure文件中包含多個plot,且該plot中包含相同數目的曲線,求這些曲線的RMS值;

1figure1plot3curve的RMS值計算

% 讀取 .fig 文件
fig = openfig('yourfigurename.fig');% 獲取所有的 axes 對象
axes_handles = findobj(fig, 'Type', 'axes');% 假設所有曲線都在第一個 axes 上
if ~isempty(axes_handles)ax = axes_handles(1);% 獲取所有的 line 對象line_handles = findobj(ax, 'Type', 'line');% 獲取圖例對象legend_obj = findobj(fig, 'Type', 'legend');% 確保有三條曲線if length(line_handles) == 3% 獲取圖例的文本內容if ~isempty(legend_obj)legend_text = get(legend_obj, 'String');elselegend_text = cell(1, 3);for i = 1:3legend_text{i} = ['Curve ' num2str(i)];endendfor i = 1:3% 獲取第 i 條曲線的數據x = get(line_handles(i), 'XData');y = get(line_handles(i), 'YData');% 計算 RMS 值rms_value = rms(y);% 顯示結果fprintf('%s 的 RMS 值為: %.4f\n', legend_text{i}, rms_value);endelseerror('圖中曲線數量不為 3 條。');end
elseerror('未找到 axes 對象。');
end% 關閉圖形
close(fig);    

1figure8plot4curve的RMS值計算

% 讀取 .fig 文件
fig = openfig('vehicle_dynamics_erformances2.fig');% 獲取所有的 axes 對象(即 subplot)
axes_handles = findobj(fig, 'Type', 'axes');% 確保有 8 個 subplot
if length(axes_handles) == 8% 獲取每個 axes 的位置信息positions = zeros(8, 4);for i = 1:8positions(i, :) = get(axes_handles(i), 'Position');end% 按照 4 行 2 列的布局排序% 先按行排序,同一行內按列排序[~, sort_indices] = sortrows([-positions(:, 2), positions(:, 1)]);sorted_axes_handles = axes_handles(sort_indices);for subplot_index = 1:8ax = sorted_axes_handles(subplot_index);% 獲取當前 subplot 中的所有 line 對象line_handles = findobj(ax, 'Type', 'line');% 確保當前 subplot 中有 4 條曲線if length(line_handles) == 4% 獲取當前 subplot 的圖例對象legend_obj = findobj(ax, 'Type', 'legend');% 獲取圖例的文本內容if ~isempty(legend_obj)legend_text = get(legend_obj, 'String');elselegend_text = cell(1, 4);for i = 1:4legend_text{i} = ['Curve ' num2str(i)];endendfprintf('Subplot %d 中各曲線的 RMS 值:\n', subplot_index);for line_index = 1:4% 獲取第 line_index 條曲線的數據line_handle = line_handles(line_index);x = get(line_handle, 'XData');y = get(line_handle, 'YData');% 過濾掉無效值(如 NaN)valid_indices = ~isnan(y);valid_y = y(valid_indices);% 計算 RMS 值rms_value = rms(valid_y);% 顯示結果fprintf('  %s 的 RMS 值為: %.4f\n', legend_text{line_index}, rms_value);endelseerror(['Subplot ' num2str(subplot_index) ' 中曲線數量不為 4 條。']);endend
elseerror('圖中 subplot 數量不為 8 個。');
end% 關閉圖形
close(fig);

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

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

相關文章

kotlin的kmp編程中遇到Unresolved reference ‘java‘問題

解決辦法 打開 File → Project Structure → Project 確保 Project SDK 是 與你的 jvmToolchain 保持一致 如果沒有,點擊右上角 Add SDK 添加 JDK 路徑 同步Sync 然后就正常了。 package org.example.projectimport androidx.compose.animation.AnimatedVi…

靜電放電測試中垂直和水平耦合板的作用

在靜電放電(ESD,Electrostatic Discharge)測試中,垂直耦合板(Vertical Coupling Plane, VCP)和水平耦合板(Horizontal Coupling Plane, HCP)是模擬設備在實際環境中因靜電放電產生的…

Web開發-JavaEE應用JNDI注入RMI服務LDAP服務DNS服務高版本限制繞過

知識點: 1、安全開發-JavaEE-JNDI注入-LADP&RMI&DNS等 2、安全開發-JavaEE-JNDI注入-項目工具&手工原理等 演示案例-WEB開發-JavaEE-JNDI注入&LDAP&RMI服務&DNS服務&高版本限制繞過 JNDI全稱為 Java Naming and DirectoryInterface&am…

基于Transformer與隨機森林的多變量時間序列預測

哈嘍,我不是小upper,今天和大家聊聊基于Transformer與隨機森林的多變量時間序列預測。 不懂Transformer的小伙伴可以看我上篇文章:一文帶你徹底搞懂!Transformer !!https://blog.csdn.net/qq_70350287/article/detail…

初識網絡原理

文章目錄 1.IP地址2.端口號3.網絡中的五元組4.協議分層5.封裝和分用6.客戶端與服務器 1.IP地址 IP地址 (IP Address): 用于在網絡中唯一標識一臺設備(主機、路由器等)。IP地址分為IPv4和IPv6兩種版本。IPv4是32位地址,通常表示為四個用點分隔…

健康養生之道

健康養生是一種積極的生活態度,是對自己和家人的關愛。從生活的細微之處做起,便能為健康打下堅實的基礎。 在生活習慣方面,要注重細節。保持居住環境的整潔與通風,讓生活空間舒適宜人。勤洗手、勤換洗衣物,養成良好的衛…

幾種電氣絕緣類型

1. 基本絕緣 1.1 絕緣等級 1.2 I類設備 2. 附加絕緣 3. 雙重絕緣 4. 加強絕緣 5. 功能性絕緣 1. 基本絕緣 用于防止觸及帶電部件的初級保護,該防護是由絕緣材料完成的 基本絕緣的目的在于為防電擊提供一個基本的保護,以避免觸電的危險,不過此類絕緣只能保證正常狀態下…

01.瀏覽器自動化webdriver源碼分析之啟動函數

日后,網絡爬蟲也好,數據采集也好,自動化必然是主流。因此,筆者未雨綢繆,在此研究各類自動化源碼,希望能夠趕上時代,做出一套實用的自動化框架。 這里先研究傳統的webdriver中轉來進行瀏覽器自動…

PLOG安裝

Plog可以通過以下命令安裝 cd ~ && git clone https://github.com/SergiusTheBest/plog.gitcd plog && mkdir buildcd build && cmake ..make && sudo make installcd ~ && sudo rm -rf ./plog若無法科學上網,可使用git cl…

Cyber SpaceGuidance網安學習指南見解

免責聲明 如有異議請在評論區友好交流,或者私信 內容純屬個人見解,僅供學習參考 如若從事非法行業請勿食用 如有雷同純屬巧合 版權問題請直接聯系本人進行刪改 前言 提示:這里可以添加本文要記錄的大概內容: 提示:以…

第十五屆藍橋杯 2024 C/C++組 下一次相遇

目錄 題目: 題目描述: 題目鏈接: 思路: 自己的思路詳解: 更好的思路詳解: 代碼: 自己的思路代碼詳解: 更好的思路代碼詳解: 題目: 題目描述&#xf…

Vue3中provide和inject數據修改規則

在 Vue3 中,通過 inject 接收到的數據是否可以直接修改,取決于 provide 提供的值的類型和響應式處理方式: 1. 若提供的是普通值(非響應式數據) javascript 復制 // 父組件 provide(staticValue, 123); 子組件修改行…

今日CSS筆記

原手寫筆記 ------------------------------------------------------------------------------------------------------- css選擇器的種類有很多種。這里只介紹幾種常用的選擇器。 1. 標簽選擇器標簽選擇器是最基本的選擇器,它可以選擇所有的標簽。例如&#xff…

健康生活新指南

在 “朋克養生” 與 “躺平焦慮” 并存的時代,真正的健康生活無需刻意 “內卷”。這幾個簡單又實用的養生妙招,能讓你在忙碌日常中悄悄升級健康狀態,輕松擁抱活力人生。? 一、飲食:吃對食物,給身體 “加 Buff”? 別…

輕量級景好鼠標錄制器

景好鼠標錄制器(詳情請戳 官網)是一款免費無廣的鍵鼠動作錄制/循環回放工具,輕松自動化應對一些重復繁瑣的操作任務,如來回切換窗口、文檔同一相對位置的復制粘貼等場景,兼容Win XP - 11 。畢竟此款本身主打簡約類型&a…

結構體與共用體-------C語言經典題目(3)

結構體 1.如何定義和使用結構體指針? 1.結構體指針的定義 首先需要定義結構體類型,例如表示學生信息的結構體: struct Student {char name[50];int age;float score; };接著,使用struct 關鍵字和指針符號* 聲明結構體指針&#x…

未來教育風向標 | 教育學頂流985高校,華東師范大學《AIGC技術賦能教育數字化轉型的機遇與挑戰》,13所大學deepseek

今天大師兄給大家推薦的是華東師范大學祝智庭教授的《AIGC技術賦能教育數字化轉型的機遇與挑戰》。華東師范大學是一所985學校,在最新的國家學科測評中,軟件工程為A級,教育學為A級。 可以說在AI和教育的結合上是國內top級別的存在。 此講義探…

Java常用正則表達式及使用方法

在 Java 中,Pattern 和 Matcher 類是 java.util.regex 包的核心,用于處理正則表達式。 Pattern 類 Pattern 類表示編譯后的正則表達式,它提供了一種將正則表達式字符串編譯成可執行對象的方式,以便后續用于匹配操作。 常用方法…

車載軟件架構 --- 駕駛員不感知的控制器軟件運行

我是穿拖鞋的漢子,魔都中堅持長期主義的汽車電子工程師。 老規矩,分享一段喜歡的文字,避免自己成為高知識低文化的工程師: 周末洗了一個澡,換了一身衣服,出了門卻不知道去哪兒,不知道去找誰,漫無目的走著,大概這就是成年人最深的孤獨吧! 舊人不知我近況,新人不知我過…

深度學習3.5 圖像分類數據集

%matplotlib inline import torch import torchvision from torch.utils import data from torchvision import transforms from d2l import torch as d2l代碼執行流程圖 #mermaid-svg-WWhBmQvijswiICpI {font-family:"trebuchet ms",verdana,arial,sans-serif;font-…