# Matlab draw diagram ---- ### 讀參數方法 ```matlab= %=========================================================== %畫圖 - 端點對端點封包遺失率 %=========================================================== fid = fopen('C:\Users\redbull\Documents\MATLAB\datatxt\delaybeta.txt','r'); % 讀入檔案 % 記得將檔案存放的資料夾新增至MATLAB的預設路徑中 ( Matlab 主視窗 File -> Set Path ) %C:\Users\redbull\Documents\MATLAB\MatlabPlot %num = fscanf(fid,'%d',1); % 讀入輸入數據的數量(整數) num = 11; User = fscanf(fid,'%g',num); % x座標 ( %g 表示讀檔案格式為浮點數 ) nbiot = fscanf(fid,'%g',num); % x座標對應之y座標 Method = fscanf(fid,'%g',num); old = fscanf(fid,'%g',num); ``` ### 讀 \*.xls or \*.xlsx 方法 測試 excel 檔案讀取是否成功 ``` xlsFile='test01.xls'; %matlab對應工作目錄下的excel檔名 [fileType, sheets] = xlsfinfo(xlsFile) ``` fileType:印出excel的檔案型態 sheets:顯示檔案中的工作表名稱,index從1開始 讀取 excel 檔案取出sheet的內容 ``` xlsFile = 'test01.xls'; B = xlsread(xlsFile, 'Sheet2') % 讀出 'Sheet2' 的全部資料 C = xlsread(xlsFile, 2, 'A2:B4') % 讀出第二個試算表位於 A2:B4 的資料 ``` ## 畫圖 ``` plot(User, nbiot,'b--o'); % plot(x軸,y軸,作圖的顏色與標示圖示) hold on %保留上一張上面plot的結果 plot(User, Method,'g-*'); hold on plot(User, old,'r-x'); hold on axis([0,2400,0,16]); %鎖定x軸與y軸邊界大小 set(gca,'XTick',[0:240:2400]) %x軸範圍0-2400,間隔240 set(gca,'YTick',[0:2:16]) %y軸範圍0-16,間隔2 legend('OPT-NB','Adaptive','Pre-backoff','location','southeast'); %產生曲線說明欄 %set(gca,'XTickMode','manual','XTick',xtick); xlabel('Number of UEs'); % 水平座標名稱 ylabel('Delay(seconds)'); % 垂直座標名稱 set(gca, 'YGrid', 'on'); % 畫出格線 grid on; ``` [其餘方法參考](http://mirlab.org/jang/books/matlabProgramming4guru/12-1_excelacc.asp?title=12-1%20Excel%20%C0%C9%AE%D7%AA%BA%C5%AA%A8%FA) [圖片加入說明的語法](https://au.mathworks.com/help/matlab/creating_plots/add-title-axis-labels-and-legend-to-graph.html) [更多 legend 範例](https://au.mathworks.com/help/matlab/ref/legend.html) [NTUST G suite 空間申請](https://www.cc.ntust.edu.tw/files/11-1005-6317.php?Lang=zh-tw) ###### tags: `master`, `Matlab`