爱气象,爱气象家园! 

气象家园

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 3244|回复: 2

[混合编程] IDL编程学习之日期与时间

[复制链接]
发表于 2017-7-4 15:56:41 | 显示全部楼层 |阅读模式

登录后查看更多精彩内容~

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
儒略日(Julian day,JD)是指由公元前4713年1月1日,协调世界时中午12时开始所经过的天数,多为天文学家采用,用以作为天文学的单一历法,把不同历法的年表统一起来。如果计算相隔若干年的两个日期之间间隔的天数,利用儒略日就比较方便。
IDL有语句输出某月、日、年的日略日:
IDL> julday(1,1,-4713)
           0

调用格式:
Result = JULDAY(Month, Day, Year, Hour, Minute, Second)
密码修改失败请联系微信:mofangbao
 楼主| 发表于 2017-7-4 16:19:23 | 显示全部楼层
使用timegen()函数可以生成时间序列
(P.S.
indgen是整型序列,findgen是浮点序列,timegen是时间序列,可见-gen后缀表示某序列;
fltarr是浮点全零阵,bytarr是字节全零阵,intarr是整型全零阵,strarr是字符串全零阵,可见-arr表示全零阵

IDL> timegen(10,units='D',start=julday(1,1,-4713))
  2.2204460492503131e-016       1.0000000000000002       2.0000000000000004       3.0000000000000009
       4.0000000000000009       5.0000000000000009       6.0000000000000018       7.0000000000000018
       8.0000000000000018       9.0000000000000018
时间序列的起点是按儒略日规则的起点,这个序列的单位可以是年、月、日、时、分、秒。
UNITS
  • “Years” or “Y”
  • “Months” or “M”
  • “Days” or “D”
  • “Hours” or “H”
  • “Minutes” or “I”
  • “Seconds” or “S”
密码修改失败请联系微信:mofangbao
 楼主| 发表于 2017-7-4 16:45:26 | 显示全部楼层
X轴为日期的
案例1:
dummy = LABEL_DATE(DATE_FORMAT=['%Y-%M-%D'])
time = TIMEGEN(START=JULDAY(1,1,2000), FINAL=JULDAY(6,30,2000))
data = RANDOMN(seed, N_ELEMENTS(time))
FIG=PLOT( time, data, XTICKUNITS = ['Time'], XTICKFORMAT='LABEL_DATE',FONT_SIZE=20)
QQ截图20170704164756.png
其中,'%Y-%M-%D'是说时间表示成年-月-日的形式。
案例2:
dummy = LABEL_DATE(DATE_FORMAT=['%D-%M','%Y'])
time = TIMEGEN(START=JULDAY(1,1,2000), FINAL=JULDAY(6,30,2000))
data = RANDOMN(seed, N_ELEMENTS(time))
fig=PLOT( time, data, XTICKUNITS = ['Time', 'Time'], $
   XTICKFORMAT='LABEL_DATE')
QQ截图20170704165402.png
密码修改失败请联系微信:mofangbao
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Copyright ©2011-2014 bbs.06climate.com All Rights Reserved.  Powered by Discuz! (京ICP-10201084)

本站信息均由会员发表,不代表气象家园立场,禁止在本站发表与国家法律相抵触言论

快速回复 返回顶部 返回列表