Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion core/cartopy.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# Cartopy

This section contains tutorials on plotting maps with [Cartopy](https://scitools.org.uk/cartopy/docs/latest/); it is cross-referenced with tutorials on [Xarray](xarray) and [Matplotlib](matplotlib).
This section contains tutorials on plotting maps with [Cartopy](https://scitools.org.uk/cartopy/docs/latest/) {cite:p}`Cartopy`; it is cross-referenced with tutorials on [Xarray](xarray) and [Matplotlib](matplotlib).

---

Expand Down
8 changes: 4 additions & 4 deletions core/cartopy/cartopy.ipynb
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@
"2. Exploring some of Cartopy's map projections\n",
"3. Creating regional maps\n",
"\n",
"This tutorial will lead you through some basics of creating maps with specified projections using Cartopy, and adding geographical features (like coastlines and borders) to those maps.\n",
"This tutorial will lead you through some basics of creating maps with specified projections using Cartopy {cite:p}`Cartopy`, and adding geographical features (like coastlines and borders) to those maps.\n",
"\n",
"Plotting data on map projections will be covered in later tutorials."
]
Expand All @@ -43,7 +43,7 @@
"\n",
"| Concepts | Importance | Notes |\n",
"| --- | --- | --- |\n",
"| [Matplotlib](../matplotlib) | Necessary | |\n",
"| [Matplotlib](../matplotlib) | Necessary | {cite:t}`Hunter:2007` |\n",
"\n",
"- **Time to learn**: 30 minutes"
]
Expand Down Expand Up @@ -718,13 +718,13 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"## Resources and References\n",
"## Additional Resources\n",
"\n",
"1. [Cartopy Documentation](https://scitools.org.uk/cartopy/docs/latest/)\n",
"2. [Full list of projections in Cartopy](https://scitools.org.uk/cartopy/docs/latest/reference/crs.html) \n",
"3. [Maps with Cartopy (Ryan Abernathey)](https://rabernat.github.io/research_computing_2018/maps-with-cartopy.html)\n",
"4. [Map Projections (GeoCAT)](https://geocat-examples.readthedocs.io/en/latest/gallery/index.html#map-projections)\n",
"5. [NCAR xdev Cartopy Tutorial Video](https://www.youtube.com/watch?v=ivmd3RluMiw)"
"5. [NCAR xdev Cartopy Tutorial Video](https://www.youtube.com/watch?v=ivmd3RluMiw)\n"
]
}
],
Expand Down
2 changes: 1 addition & 1 deletion core/matplotlib.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

![Matplotlib logo](https://matplotlib.org/stable/_images/sphx_glr_logos2_003.png)

[Matplotlib](https://matplotlib.org) is the go-to library for plotting within Python. Numerous packages and libraries build off of Matplotlib, making it the de facto standard Python plotting package. If you were to learn a single plotting tool to keep in your toolbox, this is it.
[Matplotlib](https://matplotlib.org) {cite:p}`Hunter:2007` is the go-to library for plotting within Python. Numerous packages and libraries build off of Matplotlib, making it the de facto standard Python plotting package. If you were to learn a single plotting tool to keep in your toolbox, this is it.

## Why Matplotlib?

Expand Down
12 changes: 6 additions & 6 deletions core/matplotlib/annotations-colorbars-layouts.ipynb
Original file line number Diff line number Diff line change
Expand Up @@ -31,10 +31,10 @@
"## Prerequisites\n",
"\n",
"\n",
"| Concepts | Importance |\n",
"| --- | --- |\n",
"| [NumPy Basics](../numpy/numpy-basics) | Necessary |\n",
"| [Matplotlib Basics](matplotlib-basics) | Necessary |\n",
"| Concepts | Importance | Notes |\n",
"| --- | --- | --- |\n",
"| [NumPy Basics](../numpy/numpy-basics) | Necessary | {cite:t}`harris2020array` |\n",
"| [Matplotlib Basics](matplotlib-basics) | Necessary | {cite:t}`Hunter:2007` |\n",
"\n",
"- **Time to learn**: *30-40 minutes*"
]
Expand Down Expand Up @@ -635,7 +635,7 @@
"* You can create your own colormaps with Matplotlib\n",
"* Various subplots and corresponding `Axes` objects in a figure can share colorbars\n",
" \n",
"## Resources and references\n",
"## Additional Resources\n",
"- [Matplotlib text documentation](https://matplotlib.org/stable/api/text_api.html#matplotlib.text.Text.set_math_fontfamily)\n",
"- [Matplotlib annotation documentation](https://matplotlib.org/stable/api/_as_gen/matplotlib.pyplot.annotate.html)\n",
"- [Matplotlib's annotation examples](https://matplotlib.org/stable/tutorials/text/annotations.html)\n",
Expand All @@ -645,7 +645,7 @@
"- [Plot Types Cheat Sheet](https://lnkd.in/dD5fE8V)\n",
"- [Choosing Colormaps in Matplotlib](https://matplotlib.org/stable/tutorials/colors/colormaps.html)\n",
"- [Making custom colormaps](https://matplotlib.org/stable/tutorials/colors/colormap-manipulation.html)\n",
"- [Complex figure and subplot composition](https://matplotlib.org/stable/tutorials/provisional/mosaic.html#)"
"- [Complex figure and subplot composition](https://matplotlib.org/stable/tutorials/provisional/mosaic.html#)\n"
]
},
{
Expand Down
6 changes: 3 additions & 3 deletions core/matplotlib/histograms-piecharts-animation.ipynb
Original file line number Diff line number Diff line change
Expand Up @@ -33,8 +33,8 @@
"## Prerequisites\n",
"| Concepts | Importance | Notes |\n",
"| --- | --- | --- |\n",
"| [NumPy Basics](../numpy/numpy-basics) | Necessary | |\n",
"| [Matplotlib Basics](matplotlib-basics) | Necessary | |\n",
"| [NumPy Basics](../numpy/numpy-basics) | Necessary | {cite:t}`harris2020array` |\n",
"| [Matplotlib Basics](matplotlib-basics) | Necessary | {cite:t}`Hunter:2007` |\n",
"\n",
"* **Time to Learn**: 30 minutes"
]
Expand Down Expand Up @@ -420,7 +420,7 @@
"## Additional Resources\n",
"- [Plot Types Cheat Sheet](https://lnkd.in/dD5fE8V)\n",
"- [Matplotlib Documentation: Basic Pie Charts](https://matplotlib.org/stable/gallery/pie_and_polar_charts/pie_features.html)\n",
"- [Matplotlib Documentation: Histograms](https://matplotlib.org/stable/gallery/statistics/hist.html)"
"- [Matplotlib Documentation: Histograms](https://matplotlib.org/stable/gallery/statistics/hist.html)\n"
]
},
{
Expand Down
8 changes: 4 additions & 4 deletions core/matplotlib/matplotlib-basics.ipynb
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@
"source": [
"---\n",
"## Overview\n",
"We will cover the basics of using the Matplotlib library to create plots in Python, including a few different plots available within the library. This page is laid out as follows:\n",
"We will cover the basics of using the Matplotlib {cite:p}`Hunter:2007` library to create plots in Python, including a few different plots available within the library. This page is laid out as follows:\n",
"\n",
"1. Why Matplotlib?\n",
"1. Figure and axes\n",
Expand All @@ -37,7 +37,7 @@
"## Prerequisites\n",
"| Concepts | Importance | Notes |\n",
"| --- | --- | --- |\n",
"| [NumPy Basics](../numpy/numpy-basics) | Necessary | |\n",
"| [NumPy Basics](../numpy/numpy-basics) | Necessary | {cite:t}`harris2020array` |\n",
"| MATLAB plotting experience | Helpful | |\n",
"\n",
"* **Time to Learn**: 30 minutes"
Expand Down Expand Up @@ -870,12 +870,12 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"## Resources and References\n",
"## Additional Resources\n",
"\n",
"The goal of this tutorial is to provide an overview of the use of the Matplotlib library. It covers creating simple line plots, but it is by no means comprehensive. For more information, try looking at the following documentation:\n",
"- [Matplotlib documentation](http://matplotlib.org)\n",
"- [Matplotlib examples gallery](https://matplotlib.org/stable/gallery/index.html)\n",
"- [GeoCAT examples gallery](https://geocat-examples.readthedocs.io/en/latest/gallery/index.html)"
"- [GeoCAT examples gallery](https://geocat-examples.readthedocs.io/en/latest/gallery/index.html)\n"
]
}
],
Expand Down
2 changes: 1 addition & 1 deletion core/numpy.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
:width: 250
:::

This section contains tutorials on array computing with [NumPy](https://numpy.org).
This section contains tutorials on array computing with [NumPy](https://numpy.org) {cite:p}`harris2020array`.

---

Expand Down
7 changes: 4 additions & 3 deletions core/numpy/intermediate-numpy.ipynb
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,7 @@
"\n",
"| Concepts | Importance | Notes |\n",
"| --- | --- | --- |\n",
"| [NumPy Basics](numpy-basics) | Necessary | |\n",
"| [NumPy Basics](numpy-basics) | Necessary | {cite:t}`harris2020array` |\n",
"\n",
"* **Time to learn**: 20 minutes\n",
"---"
Expand Down Expand Up @@ -649,8 +649,9 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"## Resources and references\n",
"The [NumPy Users Guide](https://numpy.org/devdocs/user/quickstart.html#less-basic) expands further on some of these topics, as well as suggests various [Tutorials](https://numpy.org/learn/), lectures, and more at this stage."
"## Additional Resources\n",
"The [NumPy Users Guide](https://numpy.org/devdocs/user/quickstart.html#less-basic) expands further on some of these topics, as well as suggests various [Tutorials](https://numpy.org/learn/), lectures, and more at this stage.\n",
"\n"
]
}
],
Expand Down
6 changes: 3 additions & 3 deletions core/numpy/numpy-basics.ipynb
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@
"metadata": {},
"source": [
"## Overview\n",
"Welcome to your first Python library - NumPy! NumPy is the fundamental package for numerical operations with Python. It contains among other things:\n",
"Welcome to your first Python library - NumPy! NumPy is the fundamental package for numerical operations with Python {cite:p}`harris2020array`. It contains among other things:\n",
"\n",
"- a powerful N-dimensional array object\n",
"- sophisticated (broadcasting) functions\n",
Expand Down Expand Up @@ -1005,9 +1005,9 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"## Resources and references\n",
"## Additional Resources\n",
"- [NumPy User Guide](http://docs.scipy.org/doc/numpy/user/)\n",
"- [SciPy Lecture Notes](https://scipy-lectures.org/)"
"- [SciPy Lecture Notes](https://scipy-lectures.org/)\n"
]
}
],
Expand Down
6 changes: 3 additions & 3 deletions core/numpy/numpy-broadcasting.ipynb
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,7 @@
"\n",
"| Concepts | Importance | Notes |\n",
"| --- | --- | --- |\n",
"| [NumPy Basics](numpy-basics) | Necessary | |\n",
"| [NumPy Basics](numpy-basics) | Necessary | {cite:t}`harris2020array` |\n",
"| [Intermediate NumPy](intermediate-numpy) | Helpful | |\n",
"| [Conceptual guide to broadcasting](https://numpy.org/doc/stable/user/theory.broadcasting.html#array-broadcasting-in-numpy) | Helpful | |\n",
"\n",
Expand Down Expand Up @@ -911,8 +911,8 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"## Resources and references\n",
"* [NumPy Broadcasting Documentation](https://docs.scipy.org/doc/numpy/user/basics.broadcasting.html)"
"## Additional Resources\n",
"* [NumPy Broadcasting Documentation](https://docs.scipy.org/doc/numpy/user/basics.broadcasting.html)\n"
]
}
],
Expand Down
2 changes: 1 addition & 1 deletion core/pandas.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ This section will contain tutorials on using [pandas](https://pandas.pydata.org)

---

From the [official documentation](https://pandas.pydata.org/), Pandas "is a fast, powerful, flexible and easy to use open source data analysis and manipulation tool, built on top of the Python programming language."
From the [official documentation](https://pandas.pydata.org/), Pandas {cite:p}`reback2020pandas` "is a fast, powerful, flexible and easy to use open source data analysis and manipulation tool, built on top of the Python programming language."

Pandas is a very powerful library for working with tabular data (e.g., spreadsheets, comma-separated-value files, or database printouts; all of these are quite common for geoscientific data). It allows us to use labels for our data; this, in turn, allows us to write expressive and robust code to manipulate the data.

Expand Down
8 changes: 4 additions & 4 deletions core/pandas/pandas.ipynb
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@
"metadata": {},
"source": [
"## Overview\n",
"1. Introduction to pandas data structures\n",
"1. Introduction to pandas {cite:p}`reback2020pandas` data structures\n",
"1. How to slice and dice pandas dataframes and dataseries\n",
"1. How to use pandas for exploratory data analysis\n",
"\n",
Expand All @@ -27,7 +27,7 @@
"| Concepts | Importance | Notes |\n",
"| --- | --- | --- |\n",
"| [Python Quickstart](../../foundations/quickstart) | Necessary | Intro to `dict` |\n",
"| [Numpy Basics](../numpy/numpy-basics) | Necessary | |\n",
"| [Numpy Basics](../numpy/numpy-basics) | Necessary | {cite:t}`harris2020array` |\n",
"\n",
"* **Time to learn**: 60 minutes"
]
Expand Down Expand Up @@ -1219,10 +1219,10 @@
"### What's Next?\n",
"In the next notebook, we will look more into using pandas for more in-depth data analysis.\n",
"\n",
"## Resources and References\n",
"## Additional Resources\n",
"1. [ENSO data used in this example](https://www.ncei.noaa.gov/access/monitoring/enso/sst)\n",
"1. [Getting Started with Pandas](https://pandas.pydata.org/docs/getting_started/index.html#getting-started)\n",
"1. [Pandas User Guide](https://pandas.pydata.org/docs/user_guide/index.html#user-guide)"
"1. [Pandas User Guide](https://pandas.pydata.org/docs/user_guide/index.html#user-guide)\n"
]
},
{
Expand Down
2 changes: 1 addition & 1 deletion core/xarray.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

![xarray Logo](https://docs.xarray.dev/en/stable/_static/Xarray_Logo_RGB_Final.svg "xarray Logo")

This section contains tutorials on using [Xarray][xarray home]. Xarray is used widely in the geosciences and beyond for analysis of gridded N-dimensional datasets.
This section contains tutorials on using [Xarray][xarray home]. Xarray {cite:p}`hoyer2017xarray` is used widely in the geosciences and beyond for analysis of gridded N-dimensional datasets.

---

Expand Down
6 changes: 3 additions & 3 deletions core/xarray/computation-masking.ipynb
Original file line number Diff line number Diff line change
Expand Up @@ -49,7 +49,7 @@
"\n",
"| Concepts | Importance | Notes |\n",
"| --- | --- | --- |\n",
"| [Introduction to Xarray](xarray-intro) | Necessary | |\n",
"| [Introduction to Xarray](xarray-intro) | Necessary | {cite:t}`hoyer2017xarray` |\n",
"\n",
"\n",
"- **Time to learn**: 60 minutes"
Expand Down Expand Up @@ -865,7 +865,7 @@
"id": "374de3a3-807a-47be-9014-e1af98909456",
"metadata": {},
"source": [
"## Resources and References\n",
"## Additional Resources\n",
"\n",
"- `groupby`: [Useful for binning/grouping data and applying reductions and/or transformations on those groups](https://xarray.pydata.org/en/stable/user-guide/groupby.html)\n",
"- `resample`: [Functionality similar to groupby, specialized for time dimensions. Can be used for temporal upsampling and downsampling](https://xarray.pydata.org/en/stable/user-guide/time-series.html#resampling-and-grouped-operations)\n",
Expand All @@ -875,7 +875,7 @@
"- `weighted`: [Useful for weighting data before applying reductions](https://xarray.pydata.org/en/stable/user-guide/computation.html#weighted-array-reductions)\n",
"\n",
"- [More xarray tutorials and videos](https://docs.xarray.dev/en/stable/getting-started-guide/tutorials-and-videos.html)\n",
"- [Xarray Documentation - Masking with `where()`](https://xarray.pydata.org/en/stable/user-guide/indexing.html#masking-with-where)"
"- [Xarray Documentation - Masking with `where()`](https://xarray.pydata.org/en/stable/user-guide/indexing.html#masking-with-where)\n"
]
}
],
Expand Down
4 changes: 2 additions & 2 deletions core/xarray/dask-arrays-xarray.ipynb
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,7 @@
"\n",
"| Concepts | Importance | Notes |\n",
"| --- | --- | --- |\n",
"| [Introduction to NumPy](../numpy/numpy-basics) | Necessary | Familiarity with Data Arrays |\n",
"| [Introduction to NumPy](../numpy/numpy-basics) | Necessary | Familiarity with Data Arrays; {cite:t}`hoyer2017xarray` |\n",
"| [Introduction to Xarray](xarray-intro) | Necessary | Familiarity with Xarray Data Structures |\n",
"\n",
"\n",
Expand Down Expand Up @@ -645,7 +645,7 @@
"id": "c282d878-a11f-41a2-9737-caee406ad5c3",
"metadata": {},
"source": [
"## Resources and references\n",
"## Additional Resources\n",
"\n",
"* To find specific reference information about Dask and Xarray, see the official documentation pages listed below:\n",
" * [Dask Docs](https://dask.org/)\n",
Expand Down
6 changes: 3 additions & 3 deletions core/xarray/enso-xarray.ipynb
Original file line number Diff line number Diff line change
Expand Up @@ -41,7 +41,7 @@
"\n",
"| Concepts | Importance | Notes |\n",
"| --- | --- | --- |\n",
"| [Introduction to Xarray](xarray-intro) | Necessary | |\n",
"| [Introduction to Xarray](xarray-intro) | Necessary | {cite:t}`hoyer2017xarray` |\n",
"| [Computation and Masking](computation-masking) | Necessary | |\n",
"\n",
"\n",
Expand Down Expand Up @@ -362,11 +362,11 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"## Resources and References\n",
"## Additional Resources\n",
"\n",
"- [Niño 3.4 index](https://climatedataguide.ucar.edu/climate-data/nino-sst-indices-nino-12-3-34-4-oni-and-tni)\n",
"- [Matplotlib's `fill_between` method](https://matplotlib.org/stable/api/_as_gen/matplotlib.pyplot.fill_between.html)\n",
"- [Matplotlib's `axhline` method](https://matplotlib.org/stable/api/_as_gen/matplotlib.pyplot.axhline.html) (see also its analogous `axvline` method)"
"- [Matplotlib's `axhline` method](https://matplotlib.org/stable/api/_as_gen/matplotlib.pyplot.axhline.html) (see also its analogous `axvline` method)\n"
]
},
{
Expand Down
9 changes: 5 additions & 4 deletions core/xarray/xarray-intro.ipynb
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@
"source": [
"## Overview\n",
"\n",
"The examples in this tutorial focus on the fundamentals of working with gridded, labeled data using Xarray. Xarray works by introducing additional abstractions into otherwise ordinary data arrays. In this tutorial, we demonstrate the usefulness of these abstractions. The examples in this tutorial explain how the proper usage of Xarray abstractions generally leads to simpler, more robust code.\n",
"The examples in this tutorial focus on the fundamentals of working with gridded, labeled data using Xarray {cite:p}`hoyer2017xarray`. Xarray works by introducing additional abstractions into otherwise ordinary data arrays. In this tutorial, we demonstrate the usefulness of these abstractions. The examples in this tutorial explain how the proper usage of Xarray abstractions generally leads to simpler, more robust code.\n",
"\n",
"The following topics will be covered in this tutorial:\n",
"\n",
Expand All @@ -43,7 +43,7 @@
"\n",
"| Concepts | Importance | Notes |\n",
"| --- | --- | --- |\n",
"| [NumPy Basics](../numpy/numpy-basics) | Necessary | |\n",
"| [NumPy Basics](../numpy/numpy-basics) | Necessary | {cite:t}`harris2020array` |\n",
"| [Intermediate NumPy](../numpy/intermediate-numpy) | Helpful | Familiarity with indexing and slicing arrays |\n",
"| [NumPy Broadcasting](../numpy/numpy-broadcasting) | Helpful | Familiarity with array arithmetic and broadcasting |\n",
"| [Introduction to Pandas](../pandas/pandas) | Helpful | Familiarity with labeled data |\n",
Expand Down Expand Up @@ -901,7 +901,7 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"## Resources and references\n",
"## Additional Resources\n",
"\n",
"This tutorial contains content adapted from the material in [Unidata's Python Training](https://unidata.github.io/python-training/workshop/XArray/xarray-and-cf/).\n",
"\n",
Expand All @@ -910,7 +910,8 @@
"- [Quick overview](http://xarray.pydata.org/en/stable/getting-started-guide/quick-overview.html#)\n",
"- [Example gallery](http://xarray.pydata.org/en/stable/gallery.html)\n",
"\n",
"Another resource you may find useful is this [Xarray Tutorial collection](https://xarray-contrib.github.io/xarray-tutorial/), created from content hosted on GitHub."
"Another resource you may find useful is this [Xarray Tutorial collection](https://xarray-contrib.github.io/xarray-tutorial/), created from content hosted on GitHub.\n",
"\n"
]
}
],
Expand Down
2 changes: 2 additions & 0 deletions myst.yml
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,8 @@ extends:
project:
title: Pythia Foundations
github: https://github.com/projectpythia/pythia-foundations
bibtex_bibfiles:
- references.bib
author:
- Project Pythia Community
copyright: '2024'
Expand Down
Loading