查看“IDL8”的源代码
←
IDL8
跳到导航
跳到搜索
因为以下原因,您没有权限编辑本页:
您请求的操作仅限属于该用户组的用户执行:
用户
您可以查看和复制此页面的源代码。
'''相对于IDL7.1的IDL8系列的新功能''' ==功能== *python bridge :可以在jupyter(ipython)里调用,参见 #将复制到<IDL_DIR>/lib/bridges/kernels/IDL/kernel.json 复制到~/share/jupyter/kernels/IDL #设置,PATH包含IDL的可执行命令文件夹 设置环境变量PYTHON包含IDL和PYTHON的可执行命令文件夹 ==函数== *idl_convert (单位转换,很实用),参见IDLUNIT() ==变量== *变量的运算 [http://www.harrisgeospatial.com/docs/whats_new_8_4.html] var = RANDOMU(seed, 200, 100) PRINT, var.length PRINT, var.ndim PRINT, var.dim PRINT, var.typecode PRINT, var.typename PRINT, var1.Mean() PRINT, var1.Total() var2 = var1.Sort() *biginteger :任意位数的整数 ===系统变量=== *!const :常用物理常数 ==函数== *FOLDERWATCH :监控文件夹 * CODE_COVERAGE :监控那些CODE被执行 (选择判断) *FFT Power Spectrum ==画图== *errorplot :完整的误差棒程序 *barplot :棒状图 *boxplot *polarplot :极坐标 *vector :画矢量图(箭头) *streamline *symbol :画符号,支持latex *生成图形的code [http://www.harrisgeospatial.com/docs/generatecode.html] :p.GenerateCode, 'mycode.pro' *save :可以直接把图保存成文件 p = OBJARR(3) ; Create three plots with random data FOR i = 0, 2 DO BEGIN t = 0.1*FINDGEN(50) y = SMOOTH(RANDOMU(seed,50), 5) p[i] = PLOT(t,y,'b', SYMBOL='D', TITLE='Observation'+STRING(i+1)) ENDFOR ; Build the multi-page PDF file, one page at a time p[0].Save, 'data1.pdf', /APPEND p[1].Save, 'data1.pdf', /APPEND p[2].Save, 'data1.pdf', /APPEND, /CLOSE *legend a = findgen(11) b = 20./(a+1)^2 p1 = PLOT(a, b, '4', /HISTOGRAM, NAME='Theoretical', /YLOG, YRANGE=[0.01,100]) p2 = PLOT(RANDOMU(-1, 11), '4r', NAME='Experimental', TRANSPARENCY=50, /HISTOGRAM, /OVERPLOT) h = LEGEND(POSITION=[9,50],label=['haha','papa'] /DATA) *画多个panel的时候可以用layout关键词,而且可以动态调整 fn = exp(SIN(FINDGEN(100))^FINDGEN(100)) w1 = WINDOW() p1 = PLOT(fn, LAYOUT = [1, 2, 1], /CURRENT, TITLE = '1') p2 = PLOT(fn, LAYOUT = [2, 2, 3], xrange=[25, 42], /CURRENT, TITLE = '2') p3 = PLOT(fn, LAYOUT = [2, 2, 4], xrange=[50, 60], /CURRENT, TITLE = '3') *colorbar 用法更自由,target关键词,不需要自己设计 *直接支持latex符号,text函数 *AXES可以直接在image上画坐标轴 ===地图相关=== *map (可以投影天球) mymap = MAP('hammer', FILL_COLOR="light_blue") ; Convert from longitude/latitude to meters longitudes = [-83.02, 88.50] latitudes = [42.42, 47.17] xy = mymap.MapForward(longitudes, latitudes) ; Convert back to longitude/latitude and plot EXPAND, xy, 2, 20, xycoordinates lonlat = mymap.MapInverse(xycoordinates) p = PLOT(lonlat[0,*], lonlat[1,*], 'rS', /OVERPLOT, /SYM_FILLED) ==数组运算== *array_equal
返回至“
IDL8
”。
导航菜单
个人工具
登录
命名空间
页面
讨论
大陆简体
已展开
已折叠
查看
阅读
查看源代码
查看历史
更多
已展开
已折叠
搜索
导航
首页
社群首页
最近更改
随机页面
帮助
工具
链入页面
相关更改
特殊页面
页面信息