b3alien 0.0.1__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
b3alien-0.0.1/LICENSE ADDED
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2025 Botanic Garden Meise
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
b3alien-0.0.1/PKG-INFO ADDED
@@ -0,0 +1,225 @@
1
+ Metadata-Version: 2.4
2
+ Name: b3alien
3
+ Version: 0.0.1
4
+ Summary: Calculating the CBD target 6.1 indicator from occurrence cubes
5
+ Author-email: Maarten Trekels <maarten.trekels@plantentuinmeise.be>
6
+ License: MIT
7
+ Project-URL: homepage, https://github.com/mtrekels/b3alien
8
+ Project-URL: repository, https://github.com/mtrekels/b3alien
9
+ Project-URL: documentation, https://b3alien.readthedocs.io/
10
+ Requires-Python: >=3.9
11
+ Description-Content-Type: text/markdown
12
+ License-File: LICENSE
13
+ Requires-Dist: aiohappyeyeballs>=2.6.1
14
+ Requires-Dist: aiohttp>=3.11.18
15
+ Requires-Dist: aiosignal>=1.3.2
16
+ Requires-Dist: alabaster>=1.0.0
17
+ Requires-Dist: appdirs>=1.4.4
18
+ Requires-Dist: asttokens>=3.0.0
19
+ Requires-Dist: async-timeout>=5.0.1
20
+ Requires-Dist: attrs>=25.3.0
21
+ Requires-Dist: backports.tarfile>=1.2.0
22
+ Requires-Dist: bqplot>=0.12.44
23
+ Requires-Dist: branca>=0.8.1
24
+ Requires-Dist: build>=1.2.2.post1
25
+ Requires-Dist: cachetools>=5.5.2
26
+ Requires-Dist: cattrs>=24.1.3
27
+ Requires-Dist: certifi>=2025.4.26
28
+ Requires-Dist: cffi>=1.17.1
29
+ Requires-Dist: charset-normalizer>=3.4.2
30
+ Requires-Dist: click>=8.1.8
31
+ Requires-Dist: cloudpickle>=3.1.1
32
+ Requires-Dist: colour>=0.1.5
33
+ Requires-Dist: comm>=0.2.2
34
+ Requires-Dist: contourpy>=1.3.2
35
+ Requires-Dist: coverage>=7.8.0
36
+ Requires-Dist: cryptography>=44.0.3
37
+ Requires-Dist: cycler>=0.12.1
38
+ Requires-Dist: dask>=2025.4.1
39
+ Requires-Dist: decorator>=5.2.1
40
+ Requires-Dist: docutils>=0.21.2
41
+ Requires-Dist: earthengine-api>=1.5.13
42
+ Requires-Dist: eerepr>=0.1.1
43
+ Requires-Dist: exceptiongroup>=1.2.2
44
+ Requires-Dist: executing>=2.2.0
45
+ Requires-Dist: folium>=0.19.5
46
+ Requires-Dist: fonttools>=4.57.0
47
+ Requires-Dist: frozenlist>=1.6.0
48
+ Requires-Dist: fsspec>=2025.3.2
49
+ Requires-Dist: future>=1.0.0
50
+ Requires-Dist: gcsfs>=2025.3.2
51
+ Requires-Dist: geemap>=0.35.3
52
+ Requires-Dist: geocoder>=1.38.1
53
+ Requires-Dist: geojson-rewind>=1.1.0
54
+ Requires-Dist: geomet>=1.1.0
55
+ Requires-Dist: geopandas>=1.0.1
56
+ Requires-Dist: google-api-core>=2.24.2
57
+ Requires-Dist: google-api-python-client>=2.169.0
58
+ Requires-Dist: google-auth>=2.39.0
59
+ Requires-Dist: google-auth-httplib2>=0.2.0
60
+ Requires-Dist: google-auth-oauthlib>=1.2.2
61
+ Requires-Dist: google-cloud-core>=2.4.3
62
+ Requires-Dist: google-cloud-storage>=3.1.0
63
+ Requires-Dist: google-crc32c>=1.7.1
64
+ Requires-Dist: google-resumable-media>=2.7.2
65
+ Requires-Dist: googleapis-common-protos>=1.70.0
66
+ Requires-Dist: httplib2>=0.22.0
67
+ Requires-Dist: id>=1.5.0
68
+ Requires-Dist: idna>=3.10
69
+ Requires-Dist: imagesize>=1.4.1
70
+ Requires-Dist: importlib_metadata>=8.7.0
71
+ Requires-Dist: iniconfig>=2.1.0
72
+ Requires-Dist: ipyevents>=2.0.2
73
+ Requires-Dist: ipyfilechooser>=0.6.0
74
+ Requires-Dist: ipyleaflet>=0.19.2
75
+ Requires-Dist: ipython>=8.36.0
76
+ Requires-Dist: ipytree>=0.2.2
77
+ Requires-Dist: ipywidgets>=8.1.6
78
+ Requires-Dist: jaraco.classes>=3.4.0
79
+ Requires-Dist: jaraco.context>=6.0.1
80
+ Requires-Dist: jaraco.functools>=4.1.0
81
+ Requires-Dist: jedi>=0.19.2
82
+ Requires-Dist: jeepney>=0.9.0
83
+ Requires-Dist: Jinja2>=3.1.6
84
+ Requires-Dist: jupyter-leaflet>=0.19.2
85
+ Requires-Dist: jupyterlab_widgets>=3.0.14
86
+ Requires-Dist: keyring>=25.6.0
87
+ Requires-Dist: kiwisolver>=1.4.8
88
+ Requires-Dist: llvmlite>=0.44.0
89
+ Requires-Dist: locket>=1.0.0
90
+ Requires-Dist: markdown-it-py>=3.0.0
91
+ Requires-Dist: MarkupSafe>=3.0.2
92
+ Requires-Dist: matplotlib>=3.10.1
93
+ Requires-Dist: matplotlib-inline>=0.1.7
94
+ Requires-Dist: mdit-py-plugins>=0.4.2
95
+ Requires-Dist: mdurl>=0.1.2
96
+ Requires-Dist: more-itertools>=10.7.0
97
+ Requires-Dist: multidict>=6.4.3
98
+ Requires-Dist: myst-parser>=4.0.1
99
+ Requires-Dist: narwhals>=1.37.1
100
+ Requires-Dist: nh3>=0.2.21
101
+ Requires-Dist: numba>=0.61.2
102
+ Requires-Dist: numpy>=2.2.5
103
+ Requires-Dist: oauthlib>=3.2.2
104
+ Requires-Dist: packaging>=25.0
105
+ Requires-Dist: pandas>=2.2.3
106
+ Requires-Dist: parso>=0.8.4
107
+ Requires-Dist: partd>=1.4.2
108
+ Requires-Dist: pexpect>=4.9.0
109
+ Requires-Dist: pillow>=11.2.1
110
+ Requires-Dist: platformdirs>=4.3.7
111
+ Requires-Dist: plotly>=6.0.1
112
+ Requires-Dist: pluggy>=1.5.0
113
+ Requires-Dist: prompt_toolkit>=3.0.51
114
+ Requires-Dist: propcache>=0.3.1
115
+ Requires-Dist: proto-plus>=1.26.1
116
+ Requires-Dist: protobuf>=6.30.2
117
+ Requires-Dist: ptyprocess>=0.7.0
118
+ Requires-Dist: pure_eval>=0.2.3
119
+ Requires-Dist: pyarrow>=20.0.0
120
+ Requires-Dist: pyasn1>=0.6.1
121
+ Requires-Dist: pyasn1_modules>=0.4.2
122
+ Requires-Dist: pycparser>=2.22
123
+ Requires-Dist: pygbif>=0.6.5
124
+ Requires-Dist: Pygments>=2.19.1
125
+ Requires-Dist: pyogrio>=0.10.0
126
+ Requires-Dist: pyparsing>=3.2.3
127
+ Requires-Dist: pyperclip>=1.9.0
128
+ Requires-Dist: pyproj>=3.7.1
129
+ Requires-Dist: pyproject_hooks>=1.2.0
130
+ Requires-Dist: pyshp>=2.3.1
131
+ Requires-Dist: pytest>=8.3.5
132
+ Requires-Dist: pytest-cov>=6.1.1
133
+ Requires-Dist: python-box>=7.3.2
134
+ Requires-Dist: python-dateutil>=2.9.0.post0
135
+ Requires-Dist: pytz>=2025.2
136
+ Requires-Dist: PyYAML>=6.0.2
137
+ Requires-Dist: ratelim>=0.1.6
138
+ Requires-Dist: readme_renderer>=44.0
139
+ Requires-Dist: requests>=2.32.3
140
+ Requires-Dist: requests-cache>=1.2.1
141
+ Requires-Dist: requests-oauthlib>=2.0.0
142
+ Requires-Dist: requests-toolbelt>=1.0.0
143
+ Requires-Dist: rfc3986>=2.0.0
144
+ Requires-Dist: rich>=14.0.0
145
+ Requires-Dist: rsa>=4.9.1
146
+ Requires-Dist: scipy>=1.15.2
147
+ Requires-Dist: scooby>=0.10.1
148
+ Requires-Dist: SecretStorage>=3.3.3
149
+ Requires-Dist: shapely>=2.1.0
150
+ Requires-Dist: six>=1.17.0
151
+ Requires-Dist: snowballstemmer>=3.0.0.1
152
+ Requires-Dist: sparse>=0.16.0
153
+ Requires-Dist: Sphinx>=8.1.3
154
+ Requires-Dist: sphinx-rtd-theme>=3.0.2
155
+ Requires-Dist: sphinxcontrib-applehelp>=2.0.0
156
+ Requires-Dist: sphinxcontrib-devhelp>=2.0.0
157
+ Requires-Dist: sphinxcontrib-htmlhelp>=2.1.0
158
+ Requires-Dist: sphinxcontrib-jquery>=4.1
159
+ Requires-Dist: sphinxcontrib-jsmath>=1.0.1
160
+ Requires-Dist: sphinxcontrib-qthelp>=2.0.0
161
+ Requires-Dist: sphinxcontrib-serializinghtml>=2.0.0
162
+ Requires-Dist: stack-data>=0.6.3
163
+ Requires-Dist: tdqm>=0.0.1
164
+ Requires-Dist: tomli>=2.2.1
165
+ Requires-Dist: toolz>=1.0.0
166
+ Requires-Dist: tqdm>=4.67.1
167
+ Requires-Dist: traitlets>=5.14.3
168
+ Requires-Dist: traittypes>=0.2.1
169
+ Requires-Dist: twine>=6.1.0
170
+ Requires-Dist: typing_extensions>=4.13.2
171
+ Requires-Dist: tzdata>=2025.2
172
+ Requires-Dist: uritemplate>=4.1.1
173
+ Requires-Dist: url-normalize>=2.2.1
174
+ Requires-Dist: urllib3>=2.4.0
175
+ Requires-Dist: wcwidth>=0.2.13
176
+ Requires-Dist: widgetsnbextension>=4.0.14
177
+ Requires-Dist: xarray>=2025.4.0
178
+ Requires-Dist: xyzservices>=2025.4.0
179
+ Requires-Dist: yarl>=1.20.0
180
+ Requires-Dist: zipp>=3.21.0
181
+ Provides-Extra: dev
182
+ Requires-Dist: pytest; extra == "dev"
183
+ Requires-Dist: flake8; extra == "dev"
184
+ Dynamic: license-file
185
+
186
+ # b3alien: a Python package to calculate the Target 6.1 headline indicator of the CBD
187
+
188
+
189
+ ## Introduction
190
+
191
+ The historic Kunming-Montreal Global Biodiversity
192
+ Framework, which supports the achievement of the
193
+ Sustainable Development Goals and builds on the
194
+ Convention on Biological Diversity’s (CBD) previous
195
+ Strategic Plans, sets out an ambitious pathway to reach
196
+ the global vision of a world living in harmony with nature
197
+ by 2050. Among the Framework’s key elements are 23
198
+ targets for 2030. In order to track the progress on the
199
+ targets, a number of indicators were agreed upon for
200
+ each target. The B3ALIEN software provides a technical
201
+ solution to track Target 6: “Reduce the Introduction of
202
+ Invasive Alien Species by 50% and Minimize Their
203
+ Impact.” It mainly focusses on the headline indicator: rate
204
+ of invasive alien species establishment, but can provide
205
+ input to some of the complementary indicators.
206
+
207
+ Decision makers at local, regional, national and
208
+ international levels need accurate and reliable
209
+ information about status, trends, threats, and they need
210
+ data presented in an actionable and understandable
211
+ format, with measures of uncertainty. Furthermore, we
212
+ need synthesized data products that can be combined
213
+ with other environmental data, such as climate, soil
214
+ chemistry, land use, altitude... B3ALIEN is built upon the
215
+ concept of data cubes developed in the Horizon Europe
216
+ Biodiversity Building Blocks for Policy project (b-
217
+ cubed.eu). It uses the solid foundations of the GBIF
218
+ infrastructure, where tools such as the GBIF Taxonomic
219
+ Backbone and the Global Registry of Introduced and
220
+ Invasive Species are available by default. Readily available occurrence data is used to determine and estimate
221
+ accurately the rate of introduction of alien species..
222
+
223
+ ## Architecture
224
+
225
+ put schema here
@@ -0,0 +1,40 @@
1
+ # b3alien: a Python package to calculate the Target 6.1 headline indicator of the CBD
2
+
3
+
4
+ ## Introduction
5
+
6
+ The historic Kunming-Montreal Global Biodiversity
7
+ Framework, which supports the achievement of the
8
+ Sustainable Development Goals and builds on the
9
+ Convention on Biological Diversity’s (CBD) previous
10
+ Strategic Plans, sets out an ambitious pathway to reach
11
+ the global vision of a world living in harmony with nature
12
+ by 2050. Among the Framework’s key elements are 23
13
+ targets for 2030. In order to track the progress on the
14
+ targets, a number of indicators were agreed upon for
15
+ each target. The B3ALIEN software provides a technical
16
+ solution to track Target 6: “Reduce the Introduction of
17
+ Invasive Alien Species by 50% and Minimize Their
18
+ Impact.” It mainly focusses on the headline indicator: rate
19
+ of invasive alien species establishment, but can provide
20
+ input to some of the complementary indicators.
21
+
22
+ Decision makers at local, regional, national and
23
+ international levels need accurate and reliable
24
+ information about status, trends, threats, and they need
25
+ data presented in an actionable and understandable
26
+ format, with measures of uncertainty. Furthermore, we
27
+ need synthesized data products that can be combined
28
+ with other environmental data, such as climate, soil
29
+ chemistry, land use, altitude... B3ALIEN is built upon the
30
+ concept of data cubes developed in the Horizon Europe
31
+ Biodiversity Building Blocks for Policy project (b-
32
+ cubed.eu). It uses the solid foundations of the GBIF
33
+ infrastructure, where tools such as the GBIF Taxonomic
34
+ Backbone and the Global Registry of Introduced and
35
+ Invasive Species are available by default. Readily available occurrence data is used to determine and estimate
36
+ accurately the rate of introduction of alien species..
37
+
38
+ ## Architecture
39
+
40
+ put schema here
File without changes
@@ -0,0 +1,23 @@
1
+ """
2
+
3
+ Biodiversity data cube functions
4
+ ========================================
5
+
6
+ """
7
+
8
+ from .b3cube import OccurrenceCube
9
+ from .b3cube import plot_richness
10
+ from .b3cube import cumulative_species
11
+ from .b3cube import calculate_rate
12
+ from .b3cube import get_survey_effort
13
+
14
+ __all__ = [
15
+ "plot_richness",
16
+ "cumulative_species",
17
+ "plot_cumsum",
18
+ "filter_multiple_cells",
19
+ "filter_multiple_occ",
20
+ "calculate_rate",
21
+ "get_survey_effort"
22
+ # purposely exclude OccurrenceCube
23
+ ]