Matlab 如何提取 fig 文件中的數據
瀏覽:3187 收藏:1
有時候運行的程序只保存了 fig 文件,而沒有保存原始數據,當需要對 fig 文件中的數據進行分析和處理時就會犯難了。本文詳細介紹 Matlab 如何提取 fig 文件中的數據,并提供原創的 m 函數,可方 便實現各類 figure 圖形提取數據。
一、方法一
1.1 示例fig圖
例如現在有一個保存的圖形:
1.2 源程序
clcclear all% 第一步 打開 fig 文件;%第二步:獲取 line 句柄ha = get(gcf,'Children'); % 獲取當前的圖形的子對象:Axes坐標軸對象hl = get(gca,'Children') % 獲取坐標軸的子對象:Line對象%第三步:獲取 line 對象的 xdata、yadata 屬性xdata = get(hl,'XData');ydata = get(hl,'YData');
1.3 運行結果:
二、方法二
2.1 示例fig圖
4維魔方隨機矩陣:
基于蒙特卡洛算法生成的等效風機出力圖:
clcclear allhf1=open('untitled.fig')%untitled.fig為基于蒙特卡洛算法生成的等效風機出力圖XYZdata1 = Fun_GetFigData(hf1);hold onhf2=open('magic.fig')%magic.fig4維魔方隨機矩陣XYZdata2 = Fun_GetFigData(hf2);
部分子函數(由于篇幅限制,此處不放全部,有需要的小伙伴私我)
function [XYZdata,Str] = Fun_GetFigData( hf,filename )XYZdata = Fun_GetFigData( hf ) 獲取figure圖的Str表頭字符串hf Figure圖形句柄 或 Figure文件名(必須帶擴展名.fig)XYZdata 坐標數組filename 保存為xls文件的名稱,不輸入或輸入0時不保存xls文件輸入非零數值時,保存成xls文件,文件名與figure文件名相同輸入filename時按照輸入的字符串保存成xls文件注意filename不帶擴展名.xlsStr 為與XYZdata一一對應的字符串cell數組,用于說明每列數據的表頭,在保存為xls文件時保存為表頭文件調用規則,請打開下面例子shuju函數%% 輸入參數filename的判斷if nargin == 1filename = 0;elseif ischar(hf) % 當輸入的hf為文件名時filename = [hf(1:end-3) 'xls'];elseif isnumeric(filename)if filename ~= 0filename = '圖形數據.xls';endend
三、參考內容
[1]Matlab如何提取fig文件中的數據_matlab讀取fig數據_MatlabFans_Mfun的博客-CSDN博客
技術鄰APP
工程師必備
工程師必備
- 項目客服
- 培訓客服
- 平臺客服
TOP
1
1




















