fluxplot 0.1.0__py3-none-any.whl

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.
Files changed (65) hide show
  1. fluxplot/__init__.py +115 -0
  2. fluxplot/_fieldmap.py +97 -0
  3. fluxplot/_mesh_reduce.py +54 -0
  4. fluxplot/_scene3d_size.py +95 -0
  5. fluxplot/_viewer/THIRD-PARTY.txt +23 -0
  6. fluxplot/_viewer/flux-model3d-viewer.min.js +4221 -0
  7. fluxplot/_viewer/stamp.json +4 -0
  8. fluxplot/api.py +1196 -0
  9. fluxplot/autotag.py +164 -0
  10. fluxplot/base.mplstyle +0 -0
  11. fluxplot/brackets.py +242 -0
  12. fluxplot/canonical_json.py +23 -0
  13. fluxplot/capture.py +150 -0
  14. fluxplot/colorcheck.py +285 -0
  15. fluxplot/colors.py +727 -0
  16. fluxplot/colorscale.py +477 -0
  17. fluxplot/data.py +178 -0
  18. fluxplot/definitions/colormaps.json +1639 -0
  19. fluxplot/definitions/flexoki.tokens.json +2571 -0
  20. fluxplot/definitions/palettes.json +2547 -0
  21. fluxplot/descriptors.py +87 -0
  22. fluxplot/fields.py +611 -0
  23. fluxplot/fits.py +240 -0
  24. fluxplot/glb.py +84 -0
  25. fluxplot/ids.py +173 -0
  26. fluxplot/images.py +362 -0
  27. fluxplot/integrity.py +27 -0
  28. fluxplot/manifest.py +788 -0
  29. fluxplot/mesh3d.py +376 -0
  30. fluxplot/panels.py +284 -0
  31. fluxplot/postprocess.py +638 -0
  32. fluxplot/presets.py +66 -0
  33. fluxplot/provenance.py +177 -0
  34. fluxplot/raster.py +295 -0
  35. fluxplot/recipe.py +178 -0
  36. fluxplot/render.py +66 -0
  37. fluxplot/roles.py +147 -0
  38. fluxplot/scene3d.py +386 -0
  39. fluxplot/scene3d_manifest.py +112 -0
  40. fluxplot/scene3d_viewer.py +633 -0
  41. fluxplot/schemas/.gitkeep +0 -0
  42. fluxplot/schemas/manifest.schema.json +2479 -0
  43. fluxplot/schemas/recipe.schema.json +179 -0
  44. fluxplot/schemas/scene3d.schema.json +461 -0
  45. fluxplot/seaborn_adapters.py +323 -0
  46. fluxplot/signature_fluxplots/__init__.py +18 -0
  47. fluxplot/signature_fluxplots/_colour.py +412 -0
  48. fluxplot/signature_fluxplots/fluxbox.py +433 -0
  49. fluxplot/signature_fluxplots/glowbar.py +769 -0
  50. fluxplot/signature_fluxplots/hexmatrix.py +927 -0
  51. fluxplot/stats/__init__.py +63 -0
  52. fluxplot/stats/_common.py +196 -0
  53. fluxplot/stats/multi_group.py +443 -0
  54. fluxplot/stats/paired.py +209 -0
  55. fluxplot/stats/two_group.py +149 -0
  56. fluxplot/style.py +469 -0
  57. fluxplot/surface.py +487 -0
  58. fluxplot/surface3d.py +197 -0
  59. fluxplot/tagger.py +561 -0
  60. fluxplot/version.py +19 -0
  61. fluxplot-0.1.0.dist-info/METADATA +1199 -0
  62. fluxplot-0.1.0.dist-info/RECORD +65 -0
  63. fluxplot-0.1.0.dist-info/WHEEL +4 -0
  64. fluxplot-0.1.0.dist-info/licenses/LICENSE +21 -0
  65. fluxplot-0.1.0.dist-info/licenses/THIRD_PARTY_NOTICES.md +472 -0
@@ -0,0 +1,65 @@
1
+ fluxplot/__init__.py,sha256=_ksIuGgtirRfCmyT4SiC1UVvBNFFhn_pQ030WZYIuEc,2833
2
+ fluxplot/_fieldmap.py,sha256=BKNZXP49ItQeuGpCyiQaLIS_PXnaDrAiNtfjq3YR_FI,4254
3
+ fluxplot/_mesh_reduce.py,sha256=6jJX6PPENqJGN26s1l7GcNqr7SFNJkMTLYEWtYcV1ic,3180
4
+ fluxplot/_scene3d_size.py,sha256=L_Rj6--DHMmK6HenigUuHFNtQ5tIBo-zMdpGXB0zVag,5543
5
+ fluxplot/api.py,sha256=rTUGys66OCibL_x7PAzgPYH5tVAv85gaj0l5jaLKHXo,60663
6
+ fluxplot/autotag.py,sha256=0G133wrhytGgiDmUeA_IOt_qZlrcVCdszb_3-gsN0iQ,7138
7
+ fluxplot/base.mplstyle,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
8
+ fluxplot/brackets.py,sha256=CZ3xMbokWu_Jz8vOM5e51Q3IxXHD4L4rECoPMfDDMWE,10937
9
+ fluxplot/canonical_json.py,sha256=qHBOAkIEvyIZ9hc5We4G3tmBX43OBtHuAc8GK2NlYAw,727
10
+ fluxplot/capture.py,sha256=eIJuEYbIAwMV2CcL2cINNpzi5N4lEYJlITocOaqe974,6314
11
+ fluxplot/colorcheck.py,sha256=_cVrkq8NnIbNd_wf67k5yWXtmISWL8YAjbajR_YTQuU,17097
12
+ fluxplot/colors.py,sha256=6IHrDwxoVDYax17n535IDp2-CAwxJ_GGRLgdBbNUVTQ,32468
13
+ fluxplot/colorscale.py,sha256=Bsmr4NHFkU7gJRUvoNkBBGuPau0P67kMORxNVzVIyWw,22004
14
+ fluxplot/data.py,sha256=7DvoqX0kXbuOQ3phscqLLO0XbAqHPtplt3OGA5HAzgk,8209
15
+ fluxplot/descriptors.py,sha256=52ijuCjSuUWeA2AGdCKY-vrENg7SjQMQQaIvm5qMeyw,4015
16
+ fluxplot/fields.py,sha256=a_KJr4ZnSlmf6sDX8BDUs_hQNoLbs0y9rugw-tbm1ik,31979
17
+ fluxplot/fits.py,sha256=EWol0NX9FMdhJmZfiQ_u_n4tA3DNz3C_GYhZGwdeefE,10910
18
+ fluxplot/glb.py,sha256=Cqn0YhDpEn4AYCLEUX812bzHgiI64jYZ7HioNlEWQiU,5178
19
+ fluxplot/ids.py,sha256=Dt797gL5OvogCBTUDGGeRQSeQxcONlfOr8azVyNvMNM,6470
20
+ fluxplot/images.py,sha256=wlY_t37AJP-1mqn9_3YV8GdpURmxf9qdF3fz94xD16k,17965
21
+ fluxplot/integrity.py,sha256=eaO70AbfXxvF1eJedJHHNdQgRjIzj5VAbdDle28SDOA,1280
22
+ fluxplot/manifest.py,sha256=4-YxALzhmtD6_-tFjV9vW5rjZfFHp7fZ5ZvEm9fNzZ0,39565
23
+ fluxplot/mesh3d.py,sha256=ubGVSJTMsGzJ0sRWyfyojsnsh8J77UjI_YMd_fQcQmg,19781
24
+ fluxplot/panels.py,sha256=uczUU0b6EB091z58wdiLdlBXveaCLXmVuvyl5uUSvRI,12445
25
+ fluxplot/postprocess.py,sha256=XHnGhXYeFqm_WDplHL5q6atICyc1Hn8Vbdw2ou6y6ac,28574
26
+ fluxplot/presets.py,sha256=zTTNKNdLdzdfYvgpzvkLU64N0nnAFIlOGiB3WO8WjUg,3980
27
+ fluxplot/provenance.py,sha256=ZEm3F-sxhWcT_ze_WqgbEU4bYJGYin_mREH6UTZe5mY,7411
28
+ fluxplot/raster.py,sha256=c0XimBSWUYh6B01IBfnO8UyZcrb2vY2R8OizdZAoZiQ,13394
29
+ fluxplot/recipe.py,sha256=oYCCV-Ym5BNcSx-T95b5ERCvQ56BBuQCpg_bozOuxHM,7755
30
+ fluxplot/render.py,sha256=U9T1aiohMZZz83Smm7cTz0aubjXh-Uh7PIsCEl8BhfQ,2570
31
+ fluxplot/roles.py,sha256=8wfbpbN-jEXvO6lm4Qs-OEZJQRd9DCn7ckZ-VznYsKk,4173
32
+ fluxplot/scene3d.py,sha256=6Fl2yyJknLX5SRyVYwFEn5-7saZCJQXPmImpVsFlBTc,18659
33
+ fluxplot/scene3d_manifest.py,sha256=E9QSEW6EjwsJV1h5wTy0iOIRDWRrn5xzixs54TDKSeM,6260
34
+ fluxplot/scene3d_viewer.py,sha256=N8-gUTfyhKuYtGO31u1eiHSPkN1Hgcc_Z-auVnyBZXI,34319
35
+ fluxplot/seaborn_adapters.py,sha256=KamfpMbKIlKG28o0iGNWN3cfBtj5tEX_FdVNkzaYh-M,15665
36
+ fluxplot/style.py,sha256=I2zK_rilV17D_x7xYoRo53Bvx8Gf5cTERokodIO6p2s,18295
37
+ fluxplot/surface.py,sha256=Mif8F1LRl32UewtweJLxvO0F7f_gMTVTUBdbYDSTkks,26176
38
+ fluxplot/surface3d.py,sha256=TeYHNN_F9XyjTisBEJ6Jed_W3AzFbD1AJ4FdXD3osZI,12170
39
+ fluxplot/tagger.py,sha256=rki2QcMpnIQOBGmU1rHV45GiYI_WQo_KG3o8PltH93A,27752
40
+ fluxplot/version.py,sha256=RapGzVIbep9EbtGjU4CBRdCUZarn9RLp4ytnLgA6JFQ,1406
41
+ fluxplot/_viewer/THIRD-PARTY.txt,sha256=Yax0yQbyHHsEH8rJPWxr_LXqPlmpajEyYk50NGk21mk,1096
42
+ fluxplot/_viewer/flux-model3d-viewer.min.js,sha256=_uR3cvQNAzzyKNRvenLuib1Ch0A2aclaFZL1Ur4XuHo,776901
43
+ fluxplot/_viewer/stamp.json,sha256=faB0KBa8wdqf8KRP37g4QCclbbjn7hdYmU4YSwyXTi0,106
44
+ fluxplot/definitions/colormaps.json,sha256=fSz-Jky64J-rlqNFDHZ-uIMsI8vYAlAXeVe_7mRR8VI,532954
45
+ fluxplot/definitions/flexoki.tokens.json,sha256=haDfQ1jcZY1HTNVDPNZMamkQFE5bn5NYMhtoagX9Nzs,57353
46
+ fluxplot/definitions/palettes.json,sha256=9U8s2WZA1sEavxf-1h_xNbY55AjEreX3AnjTX4jtT6w,42717
47
+ fluxplot/schemas/.gitkeep,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
48
+ fluxplot/schemas/manifest.schema.json,sha256=sjj-AkWYj6P41AtzvUMA7L7LEDsrK1wvrdiq7pT4vNQ,55192
49
+ fluxplot/schemas/recipe.schema.json,sha256=nVhjRmlB-35Z7P7HKhMSFDN3WmW1FrQoMfitGTNnEZs,3428
50
+ fluxplot/schemas/scene3d.schema.json,sha256=XiG75We6D2s4eX9GMw5sfbJ93pFTtDYwIsBChPrbLYE,9119
51
+ fluxplot/signature_fluxplots/__init__.py,sha256=yXkOTFNs8vtLr-UqnsDIZPBZWqPclS8fO1SAHskk6Zo,1211
52
+ fluxplot/signature_fluxplots/_colour.py,sha256=WoAWDngL9xhhuaiL71G9vG5D_965WOSUmGY-TBGVoek,18359
53
+ fluxplot/signature_fluxplots/fluxbox.py,sha256=E6xJ93a8ElNCaTg-K9_ERSHL2J3OT8opprYgal1rWUU,22528
54
+ fluxplot/signature_fluxplots/glowbar.py,sha256=ESoDV2doepwZ9HE4VjPllLWlgfUyY2hWTKOsCBoDjjc,38166
55
+ fluxplot/signature_fluxplots/hexmatrix.py,sha256=m--YlXH3Y0IsfxMQsEsWQIk05EKuU1Rto9j2mxp3xPU,46807
56
+ fluxplot/stats/__init__.py,sha256=o-b-1Vuearxpoll3sQeCHjhLgFRIiZkGJMANB4TsCl0,2419
57
+ fluxplot/stats/_common.py,sha256=BL8dXnAtRfKBMt4x61S53WP_nkI5Klt_Qyfr1Zi9z0c,8112
58
+ fluxplot/stats/multi_group.py,sha256=toR-g4Z4uRPp8BreYeNCgx6tNLW77yx9oKuiRW-vWQE,21647
59
+ fluxplot/stats/paired.py,sha256=8Lpig8ODxdQBsAcavlRY_Xklr2vu35iqXxFoLmS5_cQ,9742
60
+ fluxplot/stats/two_group.py,sha256=KlomfriUevYaA6dW6u88kBIrPAGzgNSIHNr1IRrqoE4,7368
61
+ fluxplot-0.1.0.dist-info/METADATA,sha256=dg3pNl8KBDHq8uxbj5nI0GJhYJooPKWef1V6JTT2ny0,73979
62
+ fluxplot-0.1.0.dist-info/WHEEL,sha256=W3fkpkm7-wf9vBI5Z-7s0eWkeM-spu78I8Neb98DeEg,87
63
+ fluxplot-0.1.0.dist-info/licenses/LICENSE,sha256=nLSE7VfkZoM5sN_VAOQf_JhuNSqW8GAaLUtEUX0CltE,1070
64
+ fluxplot-0.1.0.dist-info/licenses/THIRD_PARTY_NOTICES.md,sha256=MToTVQH48dkrTB42y7BI6H2ZY6CSfRe9ixlNQBuJF0Q,23222
65
+ fluxplot-0.1.0.dist-info/RECORD,,
@@ -0,0 +1,4 @@
1
+ Wheel-Version: 1.0
2
+ Generator: hatchling 1.32.4
3
+ Root-Is-Purelib: true
4
+ Tag: py3-none-any
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2026 Kort Driessen
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.
@@ -0,0 +1,472 @@
1
+ # Third-party notices
2
+
3
+ fluxplot itself is MIT-licensed (see `LICENSE`). It ships colour data derived from the
4
+ projects below, as plain samples in `src/fluxplot/definitions/` (built by
5
+ `tools/build_color_definitions.py`). Their notices are reproduced here as their licenses
6
+ require.
7
+
8
+ | Collection | Source | License |
9
+ |---|---|---|
10
+ | Flexoki | Steph Ango, https://stephango.com/flexoki | MIT |
11
+ | matplotlib colormaps | Matplotlib Development Team, https://matplotlib.org | Matplotlib license (PSF-style) |
12
+ | ColorBrewer (via matplotlib) | Cynthia Brewer, Mark Harrower and The Pennsylvania State University, https://colorbrewer2.org | Apache-2.0 |
13
+ | gist / Yorick colormaps (via matplotlib) | The Regents of the University of California (LLNL) | BSD-style |
14
+ | turbo (via matplotlib) | Google LLC | Apache-2.0 |
15
+ | viridis, magma, inferno, plasma (via matplotlib) | Nathaniel J. Smith and Stéfan van der Walt | CC0-1.0 (no notice required) |
16
+ | Scientific colour maps | Fabio Crameri, https://www.fabiocrameri.ch/colourmaps/ (via cmcrameri) | MIT |
17
+ | Paul Tol's colour schemes | Paul Tol, https://personal.sron.nl/~pault/ (via tol-colors) | BSD-3-Clause |
18
+ | cmasher | Ellert van der Velden, https://cmasher.readthedocs.io | BSD-3-Clause |
19
+
20
+ Crameri's maps are also citable: Crameri, F. (2018). Scientific colour maps. Zenodo.
21
+ https://doi.org/10.5281/zenodo.1243862
22
+
23
+ ---
24
+
25
+ ## Flexoki
26
+
27
+ ```text
28
+ MIT License
29
+
30
+ Copyright (c) 2023 Steph Ango
31
+
32
+ Permission is hereby granted, free of charge, to any person obtaining a copy
33
+ of this software and associated documentation files (the "Software"), to deal
34
+ in the Software without restriction, including without limitation the rights
35
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
36
+ copies of the Software, and to permit persons to whom the Software is
37
+ furnished to do so, subject to the following conditions:
38
+
39
+ The above copyright notice and this permission notice shall be included in all
40
+ copies or substantial portions of the Software.
41
+
42
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
43
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
44
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
45
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
46
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
47
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
48
+ SOFTWARE.
49
+ ```
50
+
51
+ ## matplotlib
52
+
53
+ ```text
54
+ License agreement for matplotlib versions 1.3.0 and later
55
+ =========================================================
56
+
57
+ 1. This LICENSE AGREEMENT is between the Matplotlib Development Team
58
+ ("MDT"), and the Individual or Organization ("Licensee") accessing and
59
+ otherwise using matplotlib software in source or binary form and its
60
+ associated documentation.
61
+
62
+ 2. Subject to the terms and conditions of this License Agreement, MDT
63
+ hereby grants Licensee a nonexclusive, royalty-free, world-wide license
64
+ to reproduce, analyze, test, perform and/or display publicly, prepare
65
+ derivative works, distribute, and otherwise use matplotlib
66
+ alone or in any derivative version, provided, however, that MDT's
67
+ License Agreement and MDT's notice of copyright, i.e., "Copyright (c)
68
+ 2012- Matplotlib Development Team; All Rights Reserved" are retained in
69
+ matplotlib alone or in any derivative version prepared by
70
+ Licensee.
71
+
72
+ 3. In the event Licensee prepares a derivative work that is based on or
73
+ incorporates matplotlib or any part thereof, and wants to
74
+ make the derivative work available to others as provided herein, then
75
+ Licensee hereby agrees to include in any such work a brief summary of
76
+ the changes made to matplotlib .
77
+
78
+ 4. MDT is making matplotlib available to Licensee on an "AS
79
+ IS" basis. MDT MAKES NO REPRESENTATIONS OR WARRANTIES, EXPRESS OR
80
+ IMPLIED. BY WAY OF EXAMPLE, BUT NOT LIMITATION, MDT MAKES NO AND
81
+ DISCLAIMS ANY REPRESENTATION OR WARRANTY OF MERCHANTABILITY OR FITNESS
82
+ FOR ANY PARTICULAR PURPOSE OR THAT THE USE OF MATPLOTLIB
83
+ WILL NOT INFRINGE ANY THIRD PARTY RIGHTS.
84
+
85
+ 5. MDT SHALL NOT BE LIABLE TO LICENSEE OR ANY OTHER USERS OF MATPLOTLIB
86
+ FOR ANY INCIDENTAL, SPECIAL, OR CONSEQUENTIAL DAMAGES OR
87
+ LOSS AS A RESULT OF MODIFYING, DISTRIBUTING, OR OTHERWISE USING
88
+ MATPLOTLIB , OR ANY DERIVATIVE THEREOF, EVEN IF ADVISED OF
89
+ THE POSSIBILITY THEREOF.
90
+
91
+ 6. This License Agreement will automatically terminate upon a material
92
+ breach of its terms and conditions.
93
+
94
+ 7. Nothing in this License Agreement shall be deemed to create any
95
+ relationship of agency, partnership, or joint venture between MDT and
96
+ Licensee. This License Agreement does not grant permission to use MDT
97
+ trademarks or trade name in a trademark sense to endorse or promote
98
+ products or services of Licensee, or any third party.
99
+
100
+ 8. By copying, installing or otherwise using matplotlib ,
101
+ Licensee agrees to be bound by the terms and conditions of this License
102
+ Agreement.
103
+ ```
104
+
105
+ ## ColorBrewer
106
+
107
+ ```text
108
+ Apache-Style Software License for ColorBrewer software and ColorBrewer Color Schemes
109
+
110
+ Copyright (c) 2002 Cynthia Brewer, Mark Harrower, and The Pennsylvania State University.
111
+
112
+ Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License.
113
+ You may obtain a copy of the License at
114
+
115
+ http://www.apache.org/licenses/LICENSE-2.0
116
+
117
+ Unless required by applicable law or agreed to in writing, software distributed
118
+ under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR
119
+ CONDITIONS OF ANY KIND, either express or implied. See the License for the
120
+ specific language governing permissions and limitations under the License.
121
+ ```
122
+
123
+ ## gist / Yorick colormaps
124
+
125
+ ```text
126
+ Copyright:
127
+
128
+ Copyright (c) 1996. The Regents of the University of California.
129
+ All rights reserved.
130
+
131
+ Permission to use, copy, modify, and distribute this software for any
132
+ purpose without fee is hereby granted, provided that this entire
133
+ notice is included in all copies of any software which is or includes
134
+ a copy or modification of this software and in all copies of the
135
+ supporting documentation for such software.
136
+
137
+ This work was produced at the University of California, Lawrence
138
+ Livermore National Laboratory under contract no. W-7405-ENG-48 between
139
+ the U.S. Department of Energy and The Regents of the University of
140
+ California for the operation of UC LLNL.
141
+
142
+
143
+ DISCLAIMER
144
+
145
+ This software was prepared as an account of work sponsored by an
146
+ agency of the United States Government. Neither the United States
147
+ Government nor the University of California nor any of their
148
+ employees, makes any warranty, express or implied, or assumes any
149
+ liability or responsibility for the accuracy, completeness, or
150
+ usefulness of any information, apparatus, product, or process
151
+ disclosed, or represents that its use would not infringe
152
+ privately-owned rights. Reference herein to any specific commercial
153
+ products, process, or service by trade name, trademark, manufacturer,
154
+ or otherwise, does not necessarily constitute or imply its
155
+ endorsement, recommendation, or favoring by the United States
156
+ Government or the University of California. The views and opinions of
157
+ authors expressed herein do not necessarily state or reflect those of
158
+ the United States Government or the University of California, and
159
+ shall not be used for advertising or product endorsement purposes.
160
+ ```
161
+
162
+ ## turbo
163
+
164
+ ```text
165
+ Copyright 2019 Google LLC.
166
+ SPDX-License-Identifier: Apache-2.0
167
+ ```
168
+
169
+ ## Scientific colour maps (cmcrameri)
170
+
171
+ ```text
172
+ MIT License
173
+
174
+ Colormaps in cmcrameri/cm/cmaps:
175
+ Copyright (c) 2020 Fabio Crameri
176
+
177
+ Python scripts and packaging:
178
+ Copyright (c) 2020 Callum Rollo
179
+
180
+ Permission is hereby granted, free of charge, to any person obtaining a copy
181
+ of this software and associated documentation files (the "Software"), to deal
182
+ in the Software without restriction, including without limitation the rights
183
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
184
+ copies of the Software, and to permit persons to whom the Software is
185
+ furnished to do so, subject to the following conditions:
186
+
187
+ The above copyright notice and this permission notice shall be included in all
188
+ copies or substantial portions of the Software.
189
+
190
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
191
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
192
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
193
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
194
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
195
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
196
+ SOFTWARE.
197
+ ```
198
+
199
+ ## Paul Tol's colour schemes (tol-colors)
200
+
201
+ ```text
202
+ BSD 3-Clause License
203
+
204
+ Copyright (c) 2019, Paul Tol, Clément Haëck
205
+
206
+ Redistribution and use in source and binary forms, with or without
207
+ modification, are permitted provided that the following conditions are met:
208
+
209
+ 1. Redistributions of source code must retain the above copyright notice, this
210
+ list of conditions and the following disclaimer.
211
+
212
+ 2. Redistributions in binary form must reproduce the above copyright notice,
213
+ this list of conditions and the following disclaimer in the documentation
214
+ and/or other materials provided with the distribution.
215
+
216
+ 3. Neither the name of the copyright holder nor the names of its
217
+ contributors may be used to endorse or promote products derived from
218
+ this software without specific prior written permission.
219
+
220
+ THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
221
+ AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
222
+ IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
223
+ DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
224
+ FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
225
+ DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
226
+ SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
227
+ CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
228
+ OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
229
+ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
230
+ ```
231
+
232
+ ## cmasher
233
+
234
+ ```text
235
+ BSD 3-Clause License
236
+
237
+ Copyright (c) 2019-2021, Ellert van der Velden
238
+ All rights reserved.
239
+
240
+ Redistribution and use in source and binary forms, with or without
241
+ modification, are permitted provided that the following conditions are met:
242
+
243
+ * Redistributions of source code must retain the above copyright notice, this
244
+ list of conditions and the following disclaimer.
245
+
246
+ * Redistributions in binary form must reproduce the above copyright notice,
247
+ this list of conditions and the following disclaimer in the documentation
248
+ and/or other materials provided with the distribution.
249
+
250
+ * Neither the name of the copyright holder nor the names of its
251
+ contributors may be used to endorse or promote products derived from
252
+ this software without specific prior written permission.
253
+
254
+ THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
255
+ AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
256
+ IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
257
+ DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
258
+ FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
259
+ DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
260
+ SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
261
+ CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
262
+ OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
263
+ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
264
+ ```
265
+
266
+ ---
267
+
268
+ ## Apache License 2.0 (applies to ColorBrewer and turbo)
269
+
270
+ ```text
271
+ Apache License
272
+ Version 2.0, January 2004
273
+ http://www.apache.org/licenses/
274
+
275
+ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
276
+
277
+ 1. Definitions.
278
+
279
+ "License" shall mean the terms and conditions for use, reproduction,
280
+ and distribution as defined by Sections 1 through 9 of this document.
281
+
282
+ "Licensor" shall mean the copyright owner or entity authorized by
283
+ the copyright owner that is granting the License.
284
+
285
+ "Legal Entity" shall mean the union of the acting entity and all
286
+ other entities that control, are controlled by, or are under common
287
+ control with that entity. For the purposes of this definition,
288
+ "control" means (i) the power, direct or indirect, to cause the
289
+ direction or management of such entity, whether by contract or
290
+ otherwise, or (ii) ownership of fifty percent (50%) or more of the
291
+ outstanding shares, or (iii) beneficial ownership of such entity.
292
+
293
+ "You" (or "Your") shall mean an individual or Legal Entity
294
+ exercising permissions granted by this License.
295
+
296
+ "Source" form shall mean the preferred form for making modifications,
297
+ including but not limited to software source code, documentation
298
+ source, and configuration files.
299
+
300
+ "Object" form shall mean any form resulting from mechanical
301
+ transformation or translation of a Source form, including but
302
+ not limited to compiled object code, generated documentation,
303
+ and conversions to other media types.
304
+
305
+ "Work" shall mean the work of authorship, whether in Source or
306
+ Object form, made available under the License, as indicated by a
307
+ copyright notice that is included in or attached to the work
308
+ (an example is provided in the Appendix below).
309
+
310
+ "Derivative Works" shall mean any work, whether in Source or Object
311
+ form, that is based on (or derived from) the Work and for which the
312
+ editorial revisions, annotations, elaborations, or other modifications
313
+ represent, as a whole, an original work of authorship. For the purposes
314
+ of this License, Derivative Works shall not include works that remain
315
+ separable from, or merely link (or bind by name) to the interfaces of,
316
+ the Work and Derivative Works thereof.
317
+
318
+ "Contribution" shall mean any work of authorship, including
319
+ the original version of the Work and any modifications or additions
320
+ to that Work or Derivative Works thereof, that is intentionally
321
+ submitted to Licensor for inclusion in the Work by the copyright owner
322
+ or by an individual or Legal Entity authorized to submit on behalf of
323
+ the copyright owner. For the purposes of this definition, "submitted"
324
+ means any form of electronic, verbal, or written communication sent
325
+ to the Licensor or its representatives, including but not limited to
326
+ communication on electronic mailing lists, source code control systems,
327
+ and issue tracking systems that are managed by, or on behalf of, the
328
+ Licensor for the purpose of discussing and improving the Work, but
329
+ excluding communication that is conspicuously marked or otherwise
330
+ designated in writing by the copyright owner as "Not a Contribution."
331
+
332
+ "Contributor" shall mean Licensor and any individual or Legal Entity
333
+ on behalf of whom a Contribution has been received by Licensor and
334
+ subsequently incorporated within the Work.
335
+
336
+ 2. Grant of Copyright License. Subject to the terms and conditions of
337
+ this License, each Contributor hereby grants to You a perpetual,
338
+ worldwide, non-exclusive, no-charge, royalty-free, irrevocable
339
+ copyright license to reproduce, prepare Derivative Works of,
340
+ publicly display, publicly perform, sublicense, and distribute the
341
+ Work and such Derivative Works in Source or Object form.
342
+
343
+ 3. Grant of Patent License. Subject to the terms and conditions of
344
+ this License, each Contributor hereby grants to You a perpetual,
345
+ worldwide, non-exclusive, no-charge, royalty-free, irrevocable
346
+ (except as stated in this section) patent license to make, have made,
347
+ use, offer to sell, sell, import, and otherwise transfer the Work,
348
+ where such license applies only to those patent claims licensable
349
+ by such Contributor that are necessarily infringed by their
350
+ Contribution(s) alone or by combination of their Contribution(s)
351
+ with the Work to which such Contribution(s) was submitted. If You
352
+ institute patent litigation against any entity (including a
353
+ cross-claim or counterclaim in a lawsuit) alleging that the Work
354
+ or a Contribution incorporated within the Work constitutes direct
355
+ or contributory patent infringement, then any patent licenses
356
+ granted to You under this License for that Work shall terminate
357
+ as of the date such litigation is filed.
358
+
359
+ 4. Redistribution. You may reproduce and distribute copies of the
360
+ Work or Derivative Works thereof in any medium, with or without
361
+ modifications, and in Source or Object form, provided that You
362
+ meet the following conditions:
363
+
364
+ (a) You must give any other recipients of the Work or
365
+ Derivative Works a copy of this License; and
366
+
367
+ (b) You must cause any modified files to carry prominent notices
368
+ stating that You changed the files; and
369
+
370
+ (c) You must retain, in the Source form of any Derivative Works
371
+ that You distribute, all copyright, patent, trademark, and
372
+ attribution notices from the Source form of the Work,
373
+ excluding those notices that do not pertain to any part of
374
+ the Derivative Works; and
375
+
376
+ (d) If the Work includes a "NOTICE" text file as part of its
377
+ distribution, then any Derivative Works that You distribute must
378
+ include a readable copy of the attribution notices contained
379
+ within such NOTICE file, excluding those notices that do not
380
+ pertain to any part of the Derivative Works, in at least one
381
+ of the following places: within a NOTICE text file distributed
382
+ as part of the Derivative Works; within the Source form or
383
+ documentation, if provided along with the Derivative Works; or,
384
+ within a display generated by the Derivative Works, if and
385
+ wherever such third-party notices normally appear. The contents
386
+ of the NOTICE file are for informational purposes only and
387
+ do not modify the License. You may add Your own attribution
388
+ notices within Derivative Works that You distribute, alongside
389
+ or as an addendum to the NOTICE text from the Work, provided
390
+ that such additional attribution notices cannot be construed
391
+ as modifying the License.
392
+
393
+ You may add Your own copyright statement to Your modifications and
394
+ may provide additional or different license terms and conditions
395
+ for use, reproduction, or distribution of Your modifications, or
396
+ for any such Derivative Works as a whole, provided Your use,
397
+ reproduction, and distribution of the Work otherwise complies with
398
+ the conditions stated in this License.
399
+
400
+ 5. Submission of Contributions. Unless You explicitly state otherwise,
401
+ any Contribution intentionally submitted for inclusion in the Work
402
+ by You to the Licensor shall be under the terms and conditions of
403
+ this License, without any additional terms or conditions.
404
+ Notwithstanding the above, nothing herein shall supersede or modify
405
+ the terms of any separate license agreement you may have executed
406
+ with Licensor regarding such Contributions.
407
+
408
+ 6. Trademarks. This License does not grant permission to use the trade
409
+ names, trademarks, service marks, or product names of the Licensor,
410
+ except as required for reasonable and customary use in describing the
411
+ origin of the Work and reproducing the content of the NOTICE file.
412
+
413
+ 7. Disclaimer of Warranty. Unless required by applicable law or
414
+ agreed to in writing, Licensor provides the Work (and each
415
+ Contributor provides its Contributions) on an "AS IS" BASIS,
416
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
417
+ implied, including, without limitation, any warranties or conditions
418
+ of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
419
+ PARTICULAR PURPOSE. You are solely responsible for determining the
420
+ appropriateness of using or redistributing the Work and assume any
421
+ risks associated with Your exercise of permissions under this License.
422
+
423
+ 8. Limitation of Liability. In no event and under no legal theory,
424
+ whether in tort (including negligence), contract, or otherwise,
425
+ unless required by applicable law (such as deliberate and grossly
426
+ negligent acts) or agreed to in writing, shall any Contributor be
427
+ liable to You for damages, including any direct, indirect, special,
428
+ incidental, or consequential damages of any character arising as a
429
+ result of this License or out of the use or inability to use the
430
+ Work (including but not limited to damages for loss of goodwill,
431
+ work stoppage, computer failure or malfunction, or any and all
432
+ other commercial damages or losses), even if such Contributor
433
+ has been advised of the possibility of such damages.
434
+
435
+ 9. Accepting Warranty or Additional Liability. While redistributing
436
+ the Work or Derivative Works thereof, You may choose to offer,
437
+ and charge a fee for, acceptance of support, warranty, indemnity,
438
+ or other liability obligations and/or rights consistent with this
439
+ License. However, in accepting such obligations, You may act only
440
+ on Your own behalf and on Your sole responsibility, not on behalf
441
+ of any other Contributor, and only if You agree to indemnify,
442
+ defend, and hold each Contributor harmless for any liability
443
+ incurred by, or claims asserted against, such Contributor by reason
444
+ of your accepting any such warranty or additional liability.
445
+
446
+ END OF TERMS AND CONDITIONS
447
+
448
+ APPENDIX: How to apply the Apache License to your work.
449
+
450
+ To apply the Apache License to your work, attach the following
451
+ boilerplate notice, with the fields enclosed by brackets "[]"
452
+ replaced with your own identifying information. (Don't include
453
+ the brackets!) The text should be enclosed in the appropriate
454
+ comment syntax for the file format. We also recommend that a
455
+ file or class name and description of purpose be included on the
456
+ same "printed page" as the copyright notice for easier
457
+ identification within third-party archives.
458
+
459
+ Copyright [yyyy] [name of copyright owner]
460
+
461
+ Licensed under the Apache License, Version 2.0 (the "License");
462
+ you may not use this file except in compliance with the License.
463
+ You may obtain a copy of the License at
464
+
465
+ http://www.apache.org/licenses/LICENSE-2.0
466
+
467
+ Unless required by applicable law or agreed to in writing, software
468
+ distributed under the License is distributed on an "AS IS" BASIS,
469
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
470
+ See the License for the specific language governing permissions and
471
+ limitations under the License.
472
+ ```