1. 程式人生 > 其它 >【matlab程式設計基礎】matlab的一些程式設計操作

【matlab程式設計基礎】matlab的一些程式設計操作

前言

基本操作

1. matlab中如何使用類似字典的方式進行鍵值操作

ids = [0 1 2 3 4 5 6];
names = {'Unknown', 'Round', 'Left', 'Right', 'Uturn', 'Bicycle', 'Pedestrain'};
sgnm = containers.Map(ids,names);
sgnm(0)

2. 已知x軸的座標範圍和射線斜率,畫面中顯示射線的說明;

固定y軸座標y0,根據斜率求解x軸座標x0,在資料點(x0,y0)新增文字;

y0 = 100;
x0 = 100/kk;
text(x0, y0, sprintf('TFL CONF is %d\nDET TFL SGN is %s', conf, sgnm(sgndir)), 'Color', 'r'); hold on;

3. 如何控制網格的大小尺寸

grid on
grid minor %  切換改變次網格線的可見性。次網格線出現在刻度線之間。並非所有型別的圖都支援次網格線。

如何按照自己的想法控制網格大小呢???

4. MATLAB如何通過方向角畫線

xx = -lateral:lateral;
kl = tan(0.5*pi+fov/2/180*pi);
yl = kl * xx;
plot(xx, yl,  '--m'); hold on; 
根據直線的斜率和座標軸範圍畫線 5. matlab定義迴圈變數
        for j=1:1:dtfln
            k = floor((j+1)/2);
            dtflinfo = eval(['can.TrfficLght.TrfficLght',num2str(j)]); % timeseries物件
            dtflconf = eval(['dtflinfo.Vis_TFL_Message',num2str(k), '__Vis_TrfficLght', num2str(j), '_Conf']);
            dtflsgndir = eval(['dtflinfo.Vis_TFL_Message',num2str(k), '__Vis_TrfficLght', num2str(j), '_SgnDir']);
            dtflsts = eval(['dtflinfo.Vis_TFL_Message',num2str(k), '__Vis_TrfficLght', num2str(j), '_sts']);
            dtflx = eval(['dtflinfo.Vis_TFL_Message',num2str(k), '__Vis_TrfficLght', num2str(j), '_x']);
            conf = dtflconf.Data(i);
            sgnfir = dtflsgndir.Data(i);
            sts = dtflsts.Data(i);
            x = dtflx.Data(i);
            kk = tan(0.5*pi - (x-0.5*imgw)/imgw*fov*pi/180);
            xx = -lateral:lateral;
            yy = k * xx;
            plot(xx, yy,  'b*'); hold on;            
        end

6. 

參考

1. containers.Map

2. 控制網格的大小尺寸

3. MATLAB如何通過方向角畫線

4. matlab定義迴圈變數

5. timeseries