可视化雪坑的python项目

snowpyt的Python项目详细描述


snowpyt:在python中可视化snowpits的开源库

Simon Filhol,2016年11月,麻省理工学院许可条款下的版权,请参见license.txt文件

上次修改时间:2018年3月(或参见github文件历史记录中的日期)

请随意为项目做贡献!!!!可以添加许多新功能…

待办事项:

高优先级

  • 编写函数以保存pit并将其加载到pickle格式(当前不工作)
  • 使地面看起来像是确认坑到达地面的用户。添加有关地面类型的注释。

低优先级

  • 指定体形大小并调整相应的字体大小
  • 更好地呈现medatadata文本,将日期转换为可读日期
  • 选择将图形大小调整为所需大小和dpi。如果需要(即多个样本)
  • ,返回轴从绘图函数变为更高级的绘图。
  • 添加选项以pickle格式或csv保存坑
  • 添加选项以matplotlib格式保存图形
  • 在给定多个示例列时添加绘图选项。

目标

这个库的目的是为雪坑数据提供可视化工具。 从斯瓦尔巴雪地研究小组的需要开始,这个包应该进化 包括更多的雪坑类型和可视化方案。

雪谷分类遵循联合国教科文组织提供的指南 International Classification for Seasonal Snow on the Ground (Fierz等人,2009年)

Fierz,C.,Amstrong,R.L.,Durand,Y.,Etchevers,P.,Greene,E.,McClung,D.M.,Nishimura,K.,Satyawali,P.K.和Sokratov,S.A.2009。地面季节性雪的国际分类。IHP-VII技术文件 水文N°83,IACS贡献N°1,UNESCO-IHP,巴黎。

安装

来自pypi存储库的最后一个稳定版本

只需在终端中运行以下命令:

pip install snowpyt

参与项目的最新开发版本:

使用终端中的以下命令将github存储库克隆到本地目录

git clone https://github.com/ArcticSnow/snowpyt.git

或者下载软件包

分支“master”由最新的稳定版本组成。其他开发版本包含在其他git分支中。

如果满足库的要求,包中包含了绘制snowpyt的所有函数。它还包含测试库的数据样本。如果您还可以按照以下步骤根据自己的方便修改代码,请向我们发送消息以添加为参与者:

要使用开发版本并继续使用最新的更改,请按以下步骤安装它

pip install -e [path2folder/snowpyt]

要将最新更改上载到pypi.org,只需:

  1. 更改文件中的版本号snowpyt/__version__.py
  2. 从snowpyt文件夹的终端运行,前提是您的$HOME/.pyc设置正确:
python setup.py upload

要求

python 2.7.9具有以下库:

使用

  1. 将数据导入snowpyt有三种方法:

    1. 使用https://niviz.org/数字化您的雪坑,并将您的雪坑导出为caamlv6(此格式遵循雪坑的国际标准)。它们使用import_caamlv6()函数。

      有关CAAML format的详细信息

    2. 使用excel file example here中的excel文件模板将雪坑数字化。以.xslx格式(默认excel格式)保存excel或libreoffice文件。

    3. 直接向snowpit类对象输入数据

  2. 示例:

fromsnowpytimportpit_classaspc############################################################# Example 1 - using a caamlv6 file:p=pc.Snowpit()p.caaml_file='[PATH TO YOUR FILE].caaml'p.import_caamlv6()p.plot(plot_order=['density','temperature','stratigraphy','hardness'])p.plot(metadata=True)p.plot(plot_order=['density','temperature','stratigraphy','crystal size'])# import isotope values (dD, dO18, d-ex)p.sample_file='[PATH TO YOUR FILE].csv'p.import_sample_csv()p.plot(plot_order=['dD','d18O','d-ex','hardness'])

同位素.csv文件应遵循以下格式:

number,height_top,height_bot,dD,d18O,dxs,ice_type
0,94,93.0,-57.55,-8.16,7.73,S
1,93,89.8,-61.56,-8.76,8.54,S
2,89.8,86.6,-75.45,-10.64,9.68,S
  1. 所有数据表都作为pandas数据帧或snowpyt类对象中的numpy数组加载

在python控制台中键入以下内容以查看加载的数据表:

mypit.table

这允许自定义plotti在现有绘图功能

之上使用您选择的库
  1. 额外采样值

可以将额外的示例值列添加到Excel文件中。列名必须唯一

当前的打印函数不会打印这些额外的列,只打印第一列。但是,这些值是通过表格中的pandas作为数据帧加载的(请参见5.)

想做贡献吗?

将项目克隆到主目录后,创建一个git分支,就可以了。编辑稳定后,与主分支合并。请参阅关于git分支和合并的简洁教程,here

贡献者列表

  • 西蒙·菲尔霍尔
  • 纪尧姆·萨特
  • [添加您的姓名]

示例

Example snowpit

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
使用Spring安全性的java LDAP over TLS   java反应堆中DoAfterSuccess和doOnSuccess之间的区别是什么?   java修复NullPointerException   java从JTextArea写入文件,没有断线?   java鼠标信息。getPointerInfo()如何获取光标视图   java在JDK11之后交付javafx应用程序需要javafxmavenplugin吗?   java添加XMLAdapter会导致JAXBContext中出现NullPointerException。新实例方法   安卓如何在java中实现XMLReader和反序列化   javarichfaces:c:forEach内部a4j:region   linux如何在javax之后释放串行端口。java/shell中的comm.portinUseeException   如何在java小程序上显示列表中的单词   从FTP服务器检索Java文件   java iText7 Html到PDF页脚与页面计数器如何更改颜色   java两个线程如何同时锁定同一个对象?