-
Notifications
You must be signed in to change notification settings - Fork 10
/
setup.py
executable file
·84 lines (63 loc) · 3.29 KB
/
setup.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
from setuptools import Command, find_packages, setup
import sys
DESCRIPTION = "A Python package for netCDF analysis and post-processing"
LONG_DESCRIPTION = """
**nctoolkit** is a comprehensive Python (3.8 and above) package for analyzing netCDF data on Linux and macOS.
Core abilities of nctoolkit include:
- Clipping to spatial region
- Calculating climatologies
- Subsetting to specific time periods
- Calculating spatial statistics
- Creating new variables using arithmetic operations
- Calculating anomalies
- Calculating rolling and cumulative statistics
- Horizontally and vertically remapping data
- Calculating time averages
- Interactive plotting of data
- Calculating the correlations between variables
- Calculating vertical statistics for the likes of oceanic data
- Calculating ensemble statistics
Operation of the package requires the installation of Climate Data Operators (CDO). This is the computational backend for most of the methods used. No knowledge of CDO is required to use nctoolkit. A couple of methods provide users with the option of using netCDF Operators (NCO) as a backend. Guidance for how to install the backends are available `here <https://nctoolkit.readthedocs.io/en/stable/installing.html>`__.
The package is designed for both intensive bulk processing of NetCDF files and interactive Jupyter notebook analysis. It features an interactive plotting feature which allows users to view the contents of NetCDF files either within Jupyter notebooks or a web browser.
Plotting requires the use of cartopy, which has some additional system dependencies. Follow the instructions `here <https://scitools.org.uk/cartopy/docs/latest/installing.html>`__ to install them.
Documentation and a user guide are available `here <https://nctoolkit.readthedocs.io/en/stable>`__.
"""
PROJECT_URLS = {
"Bug Tracker": "https://github.com/pmlmodelling/nctoolkit/issues",
"Documentation": "https://nctoolkit.readthedocs.io/en/stable",
"Source Code": "https://github.com/pmlmodelling/nctoolkit",
}
extras_require: dict() = dict()
extras_require["complete"] = ["geoviews", "rioxarray", "cfchecker", "geocube", "geopandas"]
REQUIREMENTS = [i.strip() for i in open("requirements.txt").readlines()]
setup(name='nctoolkit',
version='1.1.12',
description=DESCRIPTION,
description_content_type='text/plain',
long_description=LONG_DESCRIPTION,
long_description_content_type='text/plain',
python_requires='>=3.6.1',
classifiers=[
"License :: OSI Approved :: GNU General Public License v3 (GPLv3)",
"Operating System :: POSIX :: Linux",
"Operating System :: MacOS",
'Programming Language :: Python :: 3.8',
'Programming Language :: Python :: 3.9',
'Programming Language :: Python :: 3.10',
'Programming Language :: Python :: 3.11',
'Programming Language :: Python :: 3.12',
],
project_urls=PROJECT_URLS,
url = "https://github.com/pmlmodelling/nctoolkit",
author='Robert Wilson',
maintainer='Robert Wilson',
author_email='[email protected]',
packages = ["nctoolkit"],
setup_requires=[
'setuptools',
'setuptools-git',
'wheel',
],
install_requires = REQUIREMENTS,
extras_require = extras_require,
zip_safe=False)