如何在Windows下使用NCL
NCL是气象和海洋绘图中常用的软件,其专门为处理气象和海洋数据设计,因此在处理两类数据有着较高的效率。同时,随着NCL多个版本的优化,NCL提供了大量优秀的函数,来帮助使用者快速熟悉并使用气象和海洋中常用的统计方法。虽然现在NCL在向python转移,但是短时间内NCL依旧不会过时。
NCL主要是在Linux系统下运行。现在,大家在Windows下运行NCL,目前主要分为3种方法: (1)cywin(2)虚拟机(3)WSL(Windows Subsystem for Linux)。
今天就给来介绍WSL下安装NCL
WSL
!!!系统必须是win10,且win10版本号在1709,内部版本16299。如果你一直及时更新win10,不用担心你可以安装。
- 控制面板->程序->启用或关闭Windows功能 打开 适用于Linux的Windows子系统 选项,确定
- 应用商店(Microsoft Store)搜索ubuntu,建议选择18.04版本以上的(我安装的是18.04版本的)
- 点击启动
- 等待一段时间后,输入用户名和密码
- 依次使用 (多重复几次,直到都显示不再更新) sudo apt-get update sudo apt-get upgrade
使用设置密码升级系统,如下,下载完成
Tips:如果下载速度慢,建议更换下载源 方法如下: https://blog.csdn.net/Dolphinsz/article/details/81217424
NCL
方法一
简单、方便,但是NCL版本较为落后,目前版本可能为6.4.0(最新版本为6.6.2)
sudo apt install ncl-ncarg
方法二
- 下载NCL6.6.0的安装包后直接解压缩。因为是在Windows界面下操作,所以可以直接使用解压缩的软件直接解压缩,放入一个指定的文件夹中。如下图:
- 在根目录下,找到.bashrc文件(直接cd就能进入该文件夹),进行编辑,将下列路径添加入到该文件中即可。
#NCL
export NCARG_ROOT=/mnt/f/Linux/NCL
export PATH=$NCARG_ROOT/bin:$PATH
export DISPLAY=:0.0
Tips:需注意修改路径
- 退出WSL界面重启,输入ncl,若出现下图则表示成功。
如果出现,下图问题
使用下列命令后,在进行上一步测试。 sudo apt-get install libgfortran3
这样你就有一个完整稳定的NCL了。在Windows下运行的NCL你可以随时找到他的目录,如果一个版本在绘图或者计算的时候存在bug,你可以直接对NCL的文件进行替换,方便快捷。
编后语:关于WSL有很多值得开发的用法,比如python的使用,wrf的使用,大家可以自己去开发
参考内容:
https://blog.csdn.net/ibless/article/details/84993542?utm_medium=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-3.nonecase&depth_1-utm_source=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-3.nonecase
- 在WINDOWS下交叉编译LINUX程序运行不了是为什么?
- Hibernate的缓存机制
- error: Microsoft Visual C++ 14.0 is required. Get it with "Microsoft Visual C++ Build Tools": http:/
- 【Go 语言 redis内存数据库存储 demo】
- linux下基本操作记录mongodb
- ClassLoader究竟为何物?
- Oracle应用实战八(完结)——存储过程、函数+对象曹组
- 动态代理模式原理
- SQL可以正常用,但cmd启动不了mysql,报错[ERROR] unknown variable ;basedir=....问题
- Percona-toolkit的安装和配置(r8笔记第86天)
- 分布式服务框架 Zookeeper
- python--类方法、对象方法、静态方法
- Go语言内存分配器的实现
- Go 语言 数据库操作之链接数据库实现
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- 如何开发跨框架的组件
- ZooTeam 拍了拍你,来看看如何设计动态化表单
- C# 继承 基类和派生类基类的初始化C# 多重继承
- Go语言ORM-gorm学习笔记(一)
- Etcd+Prometheus+Grafana
- 梳理 6 项 webpack 的性能优化
- 第2章 Jenkins Server的安装部署方式
- 在MacOSX机器上设置JenkinsCI服务器
- springboot2配置文件定义${user.name}内容失效问题探究
- 重学Javascript之数据类型
- JPEG/Exif/TIFF格式解读(1):JEPG图片压缩与存储原理分析
- 聊聊dubbo-go的ProviderAuthFilter
- 仅需四步,写一个springboot starter
- 重学Javascript之类型转换
- Spring Cloud 微服务(九)- 集成 Spring Boot Admin