用matlab來畫表格(實例:處理光電效應及普朗克常數的實驗報告)

在處理光電效應及普朗克常數的數據時, 需要將對應數據繪製成表格,並畫圖。畫圖較爲簡單,在這就不提啦。表格的話,可以用excel這也可以。那麼matlab該怎麼畫出那樣的表格呢?


在matlab中有現成的表格函數uitable, 但今天我們來介紹另外一種思路來構建屬於我們的表格。


原理:matlab中的圖像本質上是由點構成的。而表格是由直線段構成的。這樣我們只需要在座標中表示出對應的線段,就可以在matlab中畫出想要的表格了。


主要使用函數:plot()  用於畫出線段

              text()  在表格中的數據可以使用text標註上,看似麻煩的選擇,但考慮到表格單元的等長性,其實就是調整一個相對位移的問題。


來我們可以看個樣張。。。。

wKiom1dXiTGysgIaAAaWfP8KNTo095.jpg-wh_50

個人感覺儘管還有許多地方可以優化,但優化難度不大,所以也就不是今天的重點了。


下面讓我們看一下具體的操作

    1)

        先畫行效果如圖wKioL1dXjS_ix_naAACEKVaTrCc692.jpg-wh_50

        代碼如下

        for i = 0:0.1:lenght

        for j = 0:wide

        %每次只畫一個點喔,

        plot(i,j);

        hold on;

        end

        end

    2)有了行,自然要畫列嘍。

                wKiom1dXjiqw-51zAAG11vjDDRk233.jpg-wh_50

效果如圖,代碼如下

        for i = 0:0.01:wide

        for j = 0:lenght

        plot(j,i);

        hold on;

        end

        end

    

接下來就是一些優化了,畢竟,這樣的表格是不美觀的。

subplot()   常規情況下是用來調整位置信息的,但我們還可以用它來限制表格的大小。

例如當輸入subplot(5,1,3).後在畫圖,那麼圖片是這樣的。

            wKiom1dXlejQn8biAACrDSu0cNY877.jpg-wh_50

可以適當的調整一下,第一個格子的寬度。使它更美觀些,方法太多了,就不多說了,

接下來,我們要做的是向"表格"中插入數據。

例如   X = [-1,-0.5,-0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17];  

       Y = [-1,-0.5,-0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17];

還是先看下效果運行圖

        wKiom1dXmXjhYRnrAAC-ItUE0d0257.jpg-wh_50

代碼如下,至此,一張表格就這樣愉快的生成嘍。

            text(0.5,0.5,'I/A');

            text(0.5,1.5,'U/v')

            for i = 1:lenght-1

            x = num2str(X(i));

            y = num2str(Y(i));

            text(i+0.5,0.5,x);

            text(i+0.5,1.5,y);

            end

好吧,下面在附件中給出完整代碼。。。


感情這種東西,真的很奇妙。你可能爲它做出一些你本來想不到的事,有時候這些事是積極的,有時候又是消極的。對於我親愛的天使。真的好喜歡她啊......只是,遺憾。現在的我配不上她。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章