一个可视化雪坑的 Python 项目
项目描述
Snowpyt:一个用 Python 可视化雪坑的开源库
Simon Filhol,2016 年 11 月,根据 MIT 许可条款获得版权,请参阅 License.txt 文件
最后修改:2018 年 3 月(或查看 github 文件历史记录中的日期)
随时为项目做出贡献!!!!可以添加许多新功能...
去做:
高优先级
- 编写函数以在pickle格式中保存和加载pit(当前不工作)
- 使地面出现以确认用户坑已到达地面。添加关于地面类型的注释。
低优先级
- 指定图形大小并调整字体大小
- 更好地呈现 medatadata 文本,将日期转换为可读日期
- 放置选项以将图形大小调整为所需的大小和 dpi。如果需要,从绘图函数返回轴变量以进行更高级的绘图(即多个样本)
- 添加选项以将坑保存为 Pickle 格式或 CSV
- 添加选项以将图形保存为 matplotlib 格式
- 添加选项以在给出多个样本列时进行绘图。
客观的
该库的目标是为雪坑数据提供可视化工具。出于 Svalbard Snow Research 小组的需要,这个包应该发展到包括更多的雪坑类型和可视化方案。
雪粒分类遵循联合国教科文组织 国际地面季节性积雪分类 (Fierz et al., 2009)提供的指南
Fierz, C., Amstrong, RL, Durand, Y., Etchevers, P., Greene, E., McClung, DM, Nishimura, K., Satyawali, PK 和 Sokratov, SA 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,只需:
- 更改文件中的版本号
snowpyt/__version__.py - 从 snowpyt 文件夹中的终端运行,前提是您
$HOME/.pyc的设置正确:
python setup.py upload
要求
具有以下库的 Python 2.7.9:
- 麻木的
- matplotlib
- 熊猫
- xlrd
- xlm
利用
-
将数据导入 Snowpyt 有三种方法:
-
使用https://niviz.org/将您的坑数字化,并将您的坑导出为 CAAMLv6(此格式遵循雪坑的国际标准)。他们使用 import_caamlv6() 函数。
-
使用此处的 excel 文件示例中的 excel 文件模板将您的雪坑数字化。以 .xslx 格式(默认 Excel 格式)保存 excel 或 libreoffice 文件。
-
将数据直接输入到雪坑类对象中
-
-
例子:
from snowpyt import pit_class as pc
############################################################
# 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
- 所有数据表都作为 Pandas 数据框或 Snowpyt 类对象中的 Numpy 数组加载
在 Python 控制台中键入以下内容以查看加载的数据表:
mypit.table
这允许在现有绘图功能之上使用您选择的库进行自定义绘图
- 额外样本值
可以将额外的示例值列添加到 excel 文件中。列名必须是唯一的
当前的绘图函数不会绘制这些额外的列,只会绘制第一列。然而,这些值是通过表中的 pandas 作为数据框加载的(参见 5.)
想贡献?
将项目克隆到主目录后,创建一个 git 分支,然后就可以了。当您的编辑稳定时,与主分支合并。在此处查看有关 git 分支和合并的简洁教程
贡献者名单
- 西蒙菲尔霍尔
- 纪尧姆·萨特
- [添加你的名字]
例子
项目详情
下载文件
下载适用于您平台的文件。如果您不确定要选择哪个,请了解有关安装包的更多信息。