From 30ed3058106c233c59cf611aea695470b5d951e6 Mon Sep 17 00:00:00 2001 From: erogluorhan Date: Wed, 6 Dec 2023 23:50:28 +0000 Subject: [PATCH] Delete preview for pull request \#38 --- _preview/38/.buildinfo | 4 - _preview/38/README.html | 634 - ...63b322750147346d694bd5ff31ba7178cc1171.png | Bin 66415 -> 0 bytes ...281865df97af499506d091ded3ab839bc978bc.png | Bin 200687 -> 0 bytes ...d4d0d624f65427fb8550d280e3644eddb118fd.png | Bin 56007 -> 0 bytes ...598070ab02f8d71a06d74b22ce1f9df33b34c5.png | Bin 134754 -> 0 bytes ...9d2fda8dc6218fb39ddfc0a45c07babd3f0230.png | Bin 194895 -> 0 bytes ...d346977d47742b1b4d76d7ce5ef7f565ebcfeb.png | Bin 46879 -> 0 bytes ...91e1251ffe9e4eadbfd4669bce0b5c59594324.png | Bin 209800 -> 0 bytes ...3ffb13cd4f49cf24276c6889ebc9e35f61088b.png | Bin 110326 -> 0 bytes ...cd36430ae64eb7fa28418dbb399cd3f2b40b44.png | Bin 72287 -> 0 bytes ...0bc68b066c708b2c968f7456c675a6ec64032a.png | Bin 128089 -> 0 bytes ...3043d403b1a62e7f45a0c96a0d5342c0181681.png | Bin 17615 -> 0 bytes ...1e92233f4bb462bd5fd0e6457cb98106afa2cb.png | Bin 31303 -> 0 bytes ...146e9e43e7c0348690b3e9e48487fd6701073a.png | Bin 96341 -> 0 bytes ...78a8ae22ba52688bb77d09db2291662c1e6be6.png | Bin 75635 -> 0 bytes ...6eea9f3c061f7cb1965363e839abc2803f499d.png | Bin 18227 -> 0 bytes ...d0093e1ca528d21bebfe1a65f3e1c2132d3d26.png | Bin 70291 -> 0 bytes ...7212e5ecc008069bc0894f5575d9f12d5c13a1.png | Bin 1190 -> 0 bytes ...c36dab9870d53dd42cdd540891d468ea1b0e37.png | Bin 37226 -> 0 bytes ...dd153d5c181c2a65fb5acc523fee90352e3c2a.png | Bin 152050 -> 0 bytes ...230fef70ac649d161831ab6fcd351d6606e184.png | Bin 9271 -> 0 bytes ...11799f1dd8a255ec3258d267c6dc10957bbc8f.png | Bin 196287 -> 0 bytes ...a15a13477116aacda8131d15a7a1ed8bfade59.png | Bin 27482 -> 0 bytes ...887797ef94519ea6bb58fbc4a5f1a16912bfdf.png | Bin 230419 -> 0 bytes ...816be34f387e77f339b13a7f13517cbf1d9f51.png | Bin 73484 -> 0 bytes ...ab7b44204b50e8434b3d131cadd590e3b3b541.png | Bin 100551 -> 0 bytes .../38/_images/NCAR-contemp-logo-blue.svg | 1 - .../_images/UAlbany-A2-logo-purple-gold.svg | 1125 - .../Unidata_logo_horizontal_1200x300.svg | 891 - ...0748391e9950bf54f125417d9d805bc6d34cd8.png | Bin 151683 -> 0 bytes ...31d581b961638b34a12d4edcdfb7e05adcbf0a.png | Bin 135919 -> 0 bytes ...22d58ba3c1e3a414d0fe3dee9cc3bceee2cd49.png | Bin 61659 -> 0 bytes .../38/_images/animation_colorbar_oops.gif | Bin 752525 -> 0 bytes _preview/38/_images/bokeh.jpeg | Bin 35201 -> 0 bytes _preview/38/_images/cartopy.jpeg | Bin 8884 -> 0 bytes ...cc3db4ac171ee53934cc2b15c11ea9cce09702.png | Bin 36108 -> 0 bytes ...e19a686c211266543edc67acfbf08a24b68b25.png | Bin 124413 -> 0 bytes ...1a50faa1f06c9acdf6678993eeb4231148a6dc.png | Bin 219748 -> 0 bytes ...e36609df4498f95f2198a4909d2073ad977477.png | Bin 29323 -> 0 bytes _preview/38/_images/geocat.png | Bin 5369 -> 0 bytes _preview/38/_images/hv-dynamic-zoomed.png | Bin 753062 -> 0 bytes _preview/38/_images/hv-non-dynamic-zoomed.png | Bin 121650 -> 0 bytes _preview/38/_images/hvplot.svg | 233 - _preview/38/_images/hvplot_diagram.svg | 1115 - _preview/38/_images/matplotlib.svg | 552 - _preview/38/_images/metpy.png | Bin 21149 -> 0 bytes _preview/38/_images/plotly.png | Bin 8041 -> 0 bytes _preview/38/_images/same_stats.png | Bin 535728 -> 0 bytes _preview/38/_images/seaborn.svg | 5216 - _preview/38/_images/thumbnail.png | Bin 202025 -> 0 bytes _preview/38/_images/uxarray.png | Bin 96370 -> 0 bytes _preview/38/_images/vapor.png | Bin 150830 -> 0 bytes _preview/38/_sources/README.md | 94 - .../38/_sources/notebooks/animation.ipynb | 514 - .../38/_sources/notebooks/comparison.ipynb | 469 - _preview/38/_sources/notebooks/good-viz.ipynb | 325 - _preview/38/_sources/notebooks/how-to-cite.md | 7 - .../notebooks/interactive-holoviz-mpas.ipynb | 737 - .../38/_sources/notebooks/plot-elements.ipynb | 308 - _preview/38/_sources/notebooks/skewt.ipynb | 400 - .../38/_sources/notebooks/spaghetti.ipynb | 942 - .../_sources/notebooks/taylor-diagrams.ipynb | 588 - ...e.4045f2051d55cab465a707391d5b2007.min.css | 1 - .../38/_sphinx_design_static/design-tabs.js | 27 - _preview/38/_static/__init__.py | 0 _preview/38/_static/basic.css | 906 - _preview/38/_static/check-solid.svg | 4 - _preview/38/_static/clipboard.min.js | 7 - _preview/38/_static/copy-button.svg | 5 - _preview/38/_static/copybutton.css | 94 - _preview/38/_static/copybutton.js | 248 - _preview/38/_static/copybutton_funcs.js | 73 - _preview/38/_static/css/blank.css | 2 - ...index.ff1ffe594081f20da1ef19478df9384b.css | 6 - _preview/38/_static/css/theme.css | 120 - ...e.4045f2051d55cab465a707391d5b2007.min.css | 1 - _preview/38/_static/design-tabs.js | 27 - _preview/38/_static/doctools.js | 358 - _preview/38/_static/documentation_options.js | 14 - _preview/38/_static/favicon.ico | Bin 15086 -> 0 bytes _preview/38/_static/file.png | Bin 286 -> 0 bytes _preview/38/_static/images/logo_binder.svg | 19 - _preview/38/_static/images/logo_colab.png | Bin 7601 -> 0 bytes .../38/_static/images/logo_jupyterhub.svg | 1 - _preview/38/_static/jquery-3.5.1.js | 10872 -- _preview/38/_static/jquery.js | 2 - .../_static/js/index.be7d3bbb2ef33a8344ce.js | 32 - _preview/38/_static/language_data.js | 297 - _preview/38/_static/minus.png | Bin 90 -> 0 bytes ...69c37c29e427902b24a333a5f9fcb2f0b3ac41.css | 2342 - _preview/38/_static/plus.png | Bin 90 -> 0 bytes _preview/38/_static/pygments.css | 75 - .../38/_static/pythia_logo-white-rtext.svg | 225 - _preview/38/_static/searchtools.js | 525 - _preview/38/_static/sphinx-book-theme.css | 5 - ...-theme.d59cb220de22ca1c485ebbdc042f0030.js | 22 - ...theme.e2363ea40746bee74734a24ffefccd78.css | 5 - .../38/_static/sphinx-pythia-theme.min.css | 1 - .../38/_static/sphinx-pythia-theme.min.js | 1 - _preview/38/_static/sphinx-thebe.css | 129 - _preview/38/_static/sphinx-thebe.js | 126 - _preview/38/_static/togglebutton.css | 160 - _preview/38/_static/togglebutton.js | 187 - _preview/38/_static/underscore-1.13.1.js | 2042 - _preview/38/_static/underscore.js | 6 - .../vendor/fontawesome/5.13.0/LICENSE.txt | 34 - .../vendor/fontawesome/5.13.0/css/all.min.css | 5 - .../5.13.0/webfonts/fa-brands-400.eot | Bin 133034 -> 0 bytes .../5.13.0/webfonts/fa-brands-400.svg | 3570 - .../5.13.0/webfonts/fa-brands-400.ttf | Bin 132728 -> 0 bytes .../5.13.0/webfonts/fa-brands-400.woff | Bin 89824 -> 0 bytes .../5.13.0/webfonts/fa-brands-400.woff2 | Bin 76612 -> 0 bytes .../5.13.0/webfonts/fa-regular-400.eot | Bin 34390 -> 0 bytes .../5.13.0/webfonts/fa-regular-400.svg | 803 - .../5.13.0/webfonts/fa-regular-400.ttf | Bin 34092 -> 0 bytes .../5.13.0/webfonts/fa-regular-400.woff | Bin 16800 -> 0 bytes .../5.13.0/webfonts/fa-regular-400.woff2 | Bin 13584 -> 0 bytes .../5.13.0/webfonts/fa-solid-900.eot | Bin 202902 -> 0 bytes .../5.13.0/webfonts/fa-solid-900.svg | 4938 - .../5.13.0/webfonts/fa-solid-900.ttf | Bin 202616 -> 0 bytes .../5.13.0/webfonts/fa-solid-900.woff | Bin 103300 -> 0 bytes .../5.13.0/webfonts/fa-solid-900.woff2 | Bin 79444 -> 0 bytes _preview/38/_static/webpack-macros.html | 25 - _preview/38/genindex.html | 413 - _preview/38/index.html | 1 - _preview/38/notebooks/animation.html | 145252 --------------- _preview/38/notebooks/comparison.html | 1561 - _preview/38/notebooks/good-viz.html | 1134 - _preview/38/notebooks/how-to-cite.html | 467 - .../notebooks/interactive-holoviz-mpas.html | 1970 - _preview/38/notebooks/plot-elements.html | 1156 - _preview/38/notebooks/skewt.html | 1103 - _preview/38/notebooks/spaghetti.html | 2243 - _preview/38/notebooks/taylor-diagrams.html | 2998 - _preview/38/objects.inv | 5 - _preview/38/search.html | 442 - _preview/38/searchindex.js | 1 - 138 files changed, 201243 deletions(-) delete mode 100644 _preview/38/.buildinfo delete mode 100644 _preview/38/README.html delete mode 100644 _preview/38/_images/02644250fa161020899ff583f563b322750147346d694bd5ff31ba7178cc1171.png delete mode 100644 _preview/38/_images/06ea4b431cbb8620d94d462fdb281865df97af499506d091ded3ab839bc978bc.png delete mode 100644 _preview/38/_images/0b0a78930c416817bd0f84619dd4d0d624f65427fb8550d280e3644eddb118fd.png delete mode 100644 _preview/38/_images/2023518dc592f09ca71a14322f598070ab02f8d71a06d74b22ce1f9df33b34c5.png delete mode 100644 _preview/38/_images/243f8c158e9e5fd92b50c00b4c9d2fda8dc6218fb39ddfc0a45c07babd3f0230.png delete mode 100644 _preview/38/_images/2891b192d7943dacdc88fa21a2d346977d47742b1b4d76d7ce5ef7f565ebcfeb.png delete mode 100644 _preview/38/_images/2bb3df9d8f98e1c6df0f7cd73491e1251ffe9e4eadbfd4669bce0b5c59594324.png delete mode 100644 _preview/38/_images/32828c2afe9f6cc37bed73b3313ffb13cd4f49cf24276c6889ebc9e35f61088b.png delete mode 100644 _preview/38/_images/381c1b8a6482cc8a4e21b20740cd36430ae64eb7fa28418dbb399cd3f2b40b44.png delete mode 100644 _preview/38/_images/3a192717310e712c2ca7ad123d0bc68b066c708b2c968f7456c675a6ec64032a.png delete mode 100644 _preview/38/_images/42f87756563b2a14cc19c2615d3043d403b1a62e7f45a0c96a0d5342c0181681.png delete mode 100644 _preview/38/_images/4599f415b04d1af5f7b2d190421e92233f4bb462bd5fd0e6457cb98106afa2cb.png delete mode 100644 _preview/38/_images/4edb796134d77eee70baf136d0146e9e43e7c0348690b3e9e48487fd6701073a.png delete mode 100644 _preview/38/_images/4fa7013a610502c2a115cf152e78a8ae22ba52688bb77d09db2291662c1e6be6.png delete mode 100644 _preview/38/_images/4fee7c3e0c03a974153f769cc16eea9f3c061f7cb1965363e839abc2803f499d.png delete mode 100644 _preview/38/_images/59e89e678ce1fb5f128791887bd0093e1ca528d21bebfe1a65f3e1c2132d3d26.png delete mode 100644 _preview/38/_images/6c099ce251ddad2e78a37d77977212e5ecc008069bc0894f5575d9f12d5c13a1.png delete mode 100644 _preview/38/_images/6f2bb0037d03edaa75059ac8c2c36dab9870d53dd42cdd540891d468ea1b0e37.png delete mode 100644 _preview/38/_images/72e49b6ea417f0b974401d0908dd153d5c181c2a65fb5acc523fee90352e3c2a.png delete mode 100644 _preview/38/_images/735794c51ad88bfd2928f35f08230fef70ac649d161831ab6fcd351d6606e184.png delete mode 100644 _preview/38/_images/7e5984d7505483da819870bcfa11799f1dd8a255ec3258d267c6dc10957bbc8f.png delete mode 100644 _preview/38/_images/82616574d6cf2730b30b2ec643a15a13477116aacda8131d15a7a1ed8bfade59.png delete mode 100644 _preview/38/_images/82bc076970a1ae005ed93240fe887797ef94519ea6bb58fbc4a5f1a16912bfdf.png delete mode 100644 _preview/38/_images/8f75a2cfe44648efbd4ab8de68816be34f387e77f339b13a7f13517cbf1d9f51.png delete mode 100644 _preview/38/_images/93e7ef876f8a2a51d301c8cb10ab7b44204b50e8434b3d131cadd590e3b3b541.png delete mode 100644 _preview/38/_images/NCAR-contemp-logo-blue.svg delete mode 100644 _preview/38/_images/UAlbany-A2-logo-purple-gold.svg delete mode 100644 _preview/38/_images/Unidata_logo_horizontal_1200x300.svg delete mode 100644 _preview/38/_images/a7eecef98bb9b2c4ad67a81d660748391e9950bf54f125417d9d805bc6d34cd8.png delete mode 100644 _preview/38/_images/ada1b04173bb2e4b0aaa6fff2831d581b961638b34a12d4edcdfb7e05adcbf0a.png delete mode 100644 _preview/38/_images/aff8248aaf9a3c9d9f7141986022d58ba3c1e3a414d0fe3dee9cc3bceee2cd49.png delete mode 100644 _preview/38/_images/animation_colorbar_oops.gif delete mode 100644 _preview/38/_images/bokeh.jpeg delete mode 100644 _preview/38/_images/cartopy.jpeg delete mode 100644 _preview/38/_images/d00337e02c2bd77a91509c0533cc3db4ac171ee53934cc2b15c11ea9cce09702.png delete mode 100644 _preview/38/_images/dd751eea551d1370a833f4790ce19a686c211266543edc67acfbf08a24b68b25.png delete mode 100644 _preview/38/_images/e5a381d3131348ac48520f82ca1a50faa1f06c9acdf6678993eeb4231148a6dc.png delete mode 100644 _preview/38/_images/ee122c5994503c201179414476e36609df4498f95f2198a4909d2073ad977477.png delete mode 100644 _preview/38/_images/geocat.png delete mode 100644 _preview/38/_images/hv-dynamic-zoomed.png delete mode 100644 _preview/38/_images/hv-non-dynamic-zoomed.png delete mode 100644 _preview/38/_images/hvplot.svg delete mode 100644 _preview/38/_images/hvplot_diagram.svg delete mode 100644 _preview/38/_images/matplotlib.svg delete mode 100644 _preview/38/_images/metpy.png delete mode 100644 _preview/38/_images/plotly.png delete mode 100644 _preview/38/_images/same_stats.png delete mode 100644 _preview/38/_images/seaborn.svg delete mode 100644 _preview/38/_images/thumbnail.png delete mode 100644 _preview/38/_images/uxarray.png delete mode 100644 _preview/38/_images/vapor.png delete mode 100644 _preview/38/_sources/README.md delete mode 100644 _preview/38/_sources/notebooks/animation.ipynb delete mode 100644 _preview/38/_sources/notebooks/comparison.ipynb delete mode 100644 _preview/38/_sources/notebooks/good-viz.ipynb delete mode 100644 _preview/38/_sources/notebooks/how-to-cite.md delete mode 100644 _preview/38/_sources/notebooks/interactive-holoviz-mpas.ipynb delete mode 100644 _preview/38/_sources/notebooks/plot-elements.ipynb delete mode 100644 _preview/38/_sources/notebooks/skewt.ipynb delete mode 100644 _preview/38/_sources/notebooks/spaghetti.ipynb delete mode 100644 _preview/38/_sources/notebooks/taylor-diagrams.ipynb delete mode 100644 _preview/38/_sphinx_design_static/design-style.4045f2051d55cab465a707391d5b2007.min.css delete mode 100644 _preview/38/_sphinx_design_static/design-tabs.js delete mode 100644 _preview/38/_static/__init__.py delete mode 100644 _preview/38/_static/basic.css delete mode 100644 _preview/38/_static/check-solid.svg delete mode 100644 _preview/38/_static/clipboard.min.js delete mode 100644 _preview/38/_static/copy-button.svg delete mode 100644 _preview/38/_static/copybutton.css delete mode 100644 _preview/38/_static/copybutton.js delete mode 100644 _preview/38/_static/copybutton_funcs.js delete mode 100644 _preview/38/_static/css/blank.css delete mode 100644 _preview/38/_static/css/index.ff1ffe594081f20da1ef19478df9384b.css delete mode 100644 _preview/38/_static/css/theme.css delete mode 100644 _preview/38/_static/design-style.4045f2051d55cab465a707391d5b2007.min.css delete mode 100644 _preview/38/_static/design-tabs.js delete mode 100644 _preview/38/_static/doctools.js delete mode 100644 _preview/38/_static/documentation_options.js delete mode 100644 _preview/38/_static/favicon.ico delete mode 100644 _preview/38/_static/file.png delete mode 100644 _preview/38/_static/images/logo_binder.svg delete mode 100644 _preview/38/_static/images/logo_colab.png delete mode 100644 _preview/38/_static/images/logo_jupyterhub.svg delete mode 100644 _preview/38/_static/jquery-3.5.1.js delete mode 100644 _preview/38/_static/jquery.js delete mode 100644 _preview/38/_static/js/index.be7d3bbb2ef33a8344ce.js delete mode 100644 _preview/38/_static/language_data.js delete mode 100644 _preview/38/_static/minus.png delete mode 100644 _preview/38/_static/mystnb.4510f1fc1dee50b3e5859aac5469c37c29e427902b24a333a5f9fcb2f0b3ac41.css delete mode 100644 _preview/38/_static/plus.png delete mode 100644 _preview/38/_static/pygments.css delete mode 100644 _preview/38/_static/pythia_logo-white-rtext.svg delete mode 100644 _preview/38/_static/searchtools.js delete mode 100644 _preview/38/_static/sphinx-book-theme.css delete mode 100644 _preview/38/_static/sphinx-book-theme.d59cb220de22ca1c485ebbdc042f0030.js delete mode 100644 _preview/38/_static/sphinx-book-theme.e2363ea40746bee74734a24ffefccd78.css delete mode 100644 _preview/38/_static/sphinx-pythia-theme.min.css delete mode 100644 _preview/38/_static/sphinx-pythia-theme.min.js delete mode 100644 _preview/38/_static/sphinx-thebe.css delete mode 100644 _preview/38/_static/sphinx-thebe.js delete mode 100644 _preview/38/_static/togglebutton.css delete mode 100644 _preview/38/_static/togglebutton.js delete mode 100644 _preview/38/_static/underscore-1.13.1.js delete mode 100644 _preview/38/_static/underscore.js delete mode 100644 _preview/38/_static/vendor/fontawesome/5.13.0/LICENSE.txt delete mode 100644 _preview/38/_static/vendor/fontawesome/5.13.0/css/all.min.css delete mode 100644 _preview/38/_static/vendor/fontawesome/5.13.0/webfonts/fa-brands-400.eot delete mode 100644 _preview/38/_static/vendor/fontawesome/5.13.0/webfonts/fa-brands-400.svg delete mode 100644 _preview/38/_static/vendor/fontawesome/5.13.0/webfonts/fa-brands-400.ttf delete mode 100644 _preview/38/_static/vendor/fontawesome/5.13.0/webfonts/fa-brands-400.woff delete mode 100644 _preview/38/_static/vendor/fontawesome/5.13.0/webfonts/fa-brands-400.woff2 delete mode 100644 _preview/38/_static/vendor/fontawesome/5.13.0/webfonts/fa-regular-400.eot delete mode 100644 _preview/38/_static/vendor/fontawesome/5.13.0/webfonts/fa-regular-400.svg delete mode 100644 _preview/38/_static/vendor/fontawesome/5.13.0/webfonts/fa-regular-400.ttf delete mode 100644 _preview/38/_static/vendor/fontawesome/5.13.0/webfonts/fa-regular-400.woff delete mode 100644 _preview/38/_static/vendor/fontawesome/5.13.0/webfonts/fa-regular-400.woff2 delete mode 100644 _preview/38/_static/vendor/fontawesome/5.13.0/webfonts/fa-solid-900.eot delete mode 100644 _preview/38/_static/vendor/fontawesome/5.13.0/webfonts/fa-solid-900.svg delete mode 100644 _preview/38/_static/vendor/fontawesome/5.13.0/webfonts/fa-solid-900.ttf delete mode 100644 _preview/38/_static/vendor/fontawesome/5.13.0/webfonts/fa-solid-900.woff delete mode 100644 _preview/38/_static/vendor/fontawesome/5.13.0/webfonts/fa-solid-900.woff2 delete mode 100644 _preview/38/_static/webpack-macros.html delete mode 100644 _preview/38/genindex.html delete mode 100644 _preview/38/index.html delete mode 100644 _preview/38/notebooks/animation.html delete mode 100644 _preview/38/notebooks/comparison.html delete mode 100644 _preview/38/notebooks/good-viz.html delete mode 100644 _preview/38/notebooks/how-to-cite.html delete mode 100644 _preview/38/notebooks/interactive-holoviz-mpas.html delete mode 100644 _preview/38/notebooks/plot-elements.html delete mode 100644 _preview/38/notebooks/skewt.html delete mode 100644 _preview/38/notebooks/spaghetti.html delete mode 100644 _preview/38/notebooks/taylor-diagrams.html delete mode 100644 _preview/38/objects.inv delete mode 100644 _preview/38/search.html delete mode 100644 _preview/38/searchindex.js diff --git a/_preview/38/.buildinfo b/_preview/38/.buildinfo deleted file mode 100644 index e781800..0000000 --- a/_preview/38/.buildinfo +++ /dev/null @@ -1,4 +0,0 @@ -# Sphinx build info version 1 -# This file hashes the configuration used when building these files. When it is not found, a full rebuild will be done. -config: 92b0476df5093385507b15ec3454a763 -tags: 645f666f9bcd5a90fca523b33c5a78b7 diff --git a/_preview/38/README.html b/_preview/38/README.html deleted file mode 100644 index 7c5126a..0000000 --- a/_preview/38/README.html +++ /dev/null @@ -1,634 +0,0 @@ - - - - - - - - Advanced Visualization Cookbook — Advanced Visualization Cookbook - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - -
-
- - - - - -
-
-
- -
- - thumbnail -
-

Advanced Visualization Cookbook

-

Binder -DOI

-

This Project Pythia Cookbook covers advanced visualization techniques building upon and combining various Python packages.

-
-

Motivation

-

The possibilities of data visualization in Python are almost endless. Already using matplotlib the workhorse behind many visualization packages, the user has a lot of customization options available to them. cartopy, metpy, seaborn, geocat-viz, and datashader are all also great packages that can offer unique additions to your Python visualization toolbox.

-

This Cookbook will house various visualization workflow examples that use different visualization packages, highlight the differences in functionality between the packages, any noteable syntax distinctions, and demonstrate combining tools to achieve a specific outcome.

-
-
-

Authors

-

Julia Kent, Anissa Zacharias, Orhan Eroglu, Philip Chmielowiec, John Clyne

-
-

Contributors

- - - -
-
-
-

Structure

-

This cookbook is broken up into a few sections - a “Basics of Geoscience Visualization” intro that compares different visualization packages and plot elements, and then example workflows of advanced visualization applications that are further subdivided.

-
-

Basics of Geoscience Visualization

-

Here we introduce the basics of geoscience visualization, the elements of a plot, different types of plots, and some unique considerations when dealing with model and measured data. Here we also share a comparison of different visualization packages available to the Scientific Python programmer.

-
-
-

Specialty Plots

-

There are some plot types that are unique to atmospheric science such as Taylor Diagrams or Skew-T plots. Here we will use metpy and geocat-viz to demonstrate these specialty plots.

-
-
-

Visualization of Structured Grids

-

In this section we will demonstrate how to visualize data that is on a structured grid. Namely, we will look at Spaghetti Hurricane plots. Here we will have workflows that utilize packages such as cartopy and geocat-viz.

-
-
-

Animation

-

Animated plots are great tools for science communication and outreach. We will demonstrate how to make your plots come to life. In this book, we use “animated plots” to refer to stable animations, such as the creation of gifs or videos.

-
-
-

Interactivity

-

Dynamically rendering, animating, panning & zooming over a plot can be great to increase data fidelity. We will showcase how to use Holoviz technologies with Bokeh backend to create interactive plots, utilizing an unstructured grid data in the Model for Prediction Across Scales (MPAS) format.

-
-
-
-

Running the Notebooks

-

You can either run the notebook using Binder or on your local machine.

-
-

Running on Binder

-

The simplest way to interact with a Jupyter Notebook is through -Binder, which enables the execution of a -Jupyter Book in the cloud. The details of how this works are not -important for now. All you need to know is how to launch a Pythia -Cookbooks chapter via Binder. Simply navigate your mouse to -the top right corner of the book chapter you are viewing and click -on the rocket ship icon, (see figure below), and be sure to select -“launch Binder”. After a moment you should be presented with a -notebook that you can interact with. I.e. you’ll be able to execute -and even change the example programs. You’ll see that the code cells -have no output at first, until you execute them by pressing -Shift+Enter. Complete details on how to interact with -a live Jupyter notebook are described in Getting Started with -Jupyter.

-
-
-

Running on Your Own Machine

-

If you are interested in running this material locally on your com

-
    -
  1. Clone the https://github.com/ProjectPythia/advanced-viz-cookbook repository:

    -
     git clone https://github.com/ProjectPythia/advanced-viz-cookbook.git
    -
    -
    -
  2. -
  3. Move into the advanced-viz-cookbook directory

    -
    cd advanced-viz-cookbook
    -
    -
    -
  4. -
  5. Create and activate your conda environment from the environment.yml file

    -
    conda env create -f environment.yml
    -conda activate advanced-viz-cookbook
    -
    -
    -
  6. -
  7. Move into the notebooks directory and start up Jupyterlab

    -
    cd notebooks/
    -jupyter lab
    -
    -
    -
  8. -
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- - - - -
- - -
-
-
- -
-
- - - - - - \ No newline at end of file diff --git a/_preview/38/_images/02644250fa161020899ff583f563b322750147346d694bd5ff31ba7178cc1171.png b/_preview/38/_images/02644250fa161020899ff583f563b322750147346d694bd5ff31ba7178cc1171.png deleted file mode 100644 index 853baedc3dbf41637759311941784629a44ed746..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 66415 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