matlab以時間爲座標的設置

版權聲明:原創作品,允許轉載,轉載時請務必以超鏈接形式標明文章 原始出處 、作者信息和本聲明。否則將追究法律責任。http://yucaiyan.blog.51cto.com/367590/213585
  這兩天遇上matlab在做圖時沒有辦法將時間做爲座標顯示出來的問題,查了查help文檔,終於能顯示了.
  首先取出數據表中的數據,現在只舉例說明.
  假設有這麼些數據:
% ('1899-12-30 00:00:00','21','瓦斯','1.11',
% '1899-12-30 00:03:00','21','瓦斯','0.92',
% '1899-12-30 00:06:00','21','瓦斯','0.88',
% '1899-12-30 00:09:00','21','瓦斯','0.88',
% '1899-12-30 00:12:00','21','瓦斯','0.89',
% '1899-12-30 00:15:00','21','瓦斯','0.77',
% '1899-12-30 00:18:00','21','瓦斯','0.78',
% '1899-12-30 00:21:00','21','瓦斯','0.81',
% '1899-12-30 00:24:00','21','瓦斯','0.81';
 
  要畫第一列和第四列的曲線.
  如果數據從數據庫裏直接取出可以以列的形式取,現在構造這樣一些數據.

 最主要的有兩個函數,datenum和datetick.
     datenum會把時間格式轉換爲數字方便繪圖.
 datetick可以設置x軸的顯示方式.
   
   
    運行結果如下圖所示:
  
  如果要改變x軸顯示的步長,可以用set命令.
  set(gca,'xtick',[min:步長:max]);
  選擇合適的min,步長,max時,可以查看橫座標x裏的值.
  如果將程序里加上一句:
  set(gca,'xtick',[693953:0.004:693953.01]);
        那麼顯示結果如下:
  
  如果只想顯示小時分鐘秒數,那麼可以使用datetick的第14種顯示樣式.
  datetick('x',14)    
        set(gca,'xtick',[693953:0.0024:693953.009]);
 
       運行結果如下:
   
  
        還有一個問題沒有解決,在顯示的時候如果步長太短,而時間格式又太長,matlab不會自己調整格式顯示,就會出現刻度的重疊,以後解決了這個問題再寫解決辦法吧.
本文出自 “紫冰百合” 博客,請務必保留此出處http://yucaiyan.blog.51cto.com/367590/213585
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章