Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
65 commits
Select commit Hold shift + click to select a range
2385692
Add myst_nb
VeckoTheGecko Jul 15, 2026
9b53505
Migrate doc/getting-started-guide/quick-overview.md
VeckoTheGecko Jul 15, 2026
ec5540f
Migrate doc/get-help/faq.md
VeckoTheGecko Jul 15, 2026
33353d1
Migrate doc/internals/zarr-encoding-spec.md
VeckoTheGecko Jul 15, 2026
4ec565a
Migrate doc/user-guide/hierarchical-data.md
VeckoTheGecko Jul 16, 2026
2418118
Migrate doc/user-guide/reshaping.md
VeckoTheGecko Jul 16, 2026
125b458
Migrate doc/user-guide/plotting.md
VeckoTheGecko Jul 16, 2026
298b7be
Migrate doc/user-guide/interpolation.md
VeckoTheGecko Jul 16, 2026
be288b3
Migrate doc/user-guide/combining.md
VeckoTheGecko Jul 16, 2026
1e56904
Migrate doc/user-guide/groupby.md
VeckoTheGecko Jul 16, 2026
ef4a755
Fix references
VeckoTheGecko Jul 16, 2026
df8d9ea
Migrate doc/user-guide/weather-climate.md
VeckoTheGecko Jul 16, 2026
98e47fe
Migrate doc/user-guide/testing.md
VeckoTheGecko Jul 16, 2026
f030c0a
Migrate doc/user-guide/terminology.md
VeckoTheGecko Jul 16, 2026
d8bc822
Fix cross-links
VeckoTheGecko Jul 16, 2026
04bf33c
Migrate doc/user-guide/time-series.md
VeckoTheGecko Jul 16, 2026
f08efa3
Migrate doc/user-guide/data-structures.md
VeckoTheGecko Jul 16, 2026
ceb21ef
Migrate doc/internals/internal-design.md
VeckoTheGecko Jul 16, 2026
5fb205b
Migrate doc/internals/how-to-create-custom-index.md
VeckoTheGecko Jul 16, 2026
ae50ce7
Fix cross-links
VeckoTheGecko Jul 16, 2026
b7c40bc
Migrate doc/internals/duck-arrays-integration.md
VeckoTheGecko Jul 16, 2026
489f742
Migrate doc/internals/time-coding.md
VeckoTheGecko Jul 16, 2026
7ebf90a
Fix cross-linking
VeckoTheGecko Jul 16, 2026
87c0da9
Migrate doc/internals/extending-xarray.md
VeckoTheGecko Jul 16, 2026
21ad5cd
Fix path
VeckoTheGecko Jul 16, 2026
54a9360
Replace jupyter-input and jupyter-output with python code blocks and …
VeckoTheGecko Jul 16, 2026
10fe42d
Migrate whats-new.md code blocks
VeckoTheGecko Jul 17, 2026
d5b3b32
Migrate doc/internals/how-to-add-new-backend.rst
VeckoTheGecko Jul 17, 2026
21bbae7
Migrate doc/user-guide/complex-numbers.md
VeckoTheGecko Jul 17, 2026
a285590
Move from tabs to sections
VeckoTheGecko Jul 17, 2026
96213e6
Remove myst_parser
VeckoTheGecko Jul 17, 2026
62268b2
Fix crosslinks
VeckoTheGecko Jul 17, 2026
0558d33
Migrate doc/user-guide/dask.md
VeckoTheGecko Jul 17, 2026
1f2e35b
Migrate doc/user-guide/duckarrays.md
VeckoTheGecko Jul 17, 2026
fb1e72e
Migrate doc/user-guide/indexing.md
VeckoTheGecko Jul 17, 2026
feda881
Migrate doc/user-guide/io.md
VeckoTheGecko Jul 17, 2026
f8df4fa
Fix tab groups
VeckoTheGecko Jul 17, 2026
e291805
Migrate doc/user-guide/pandas.md
VeckoTheGecko Jul 17, 2026
d0b231b
Fix cross-linking and code
VeckoTheGecko Jul 17, 2026
3623a1d
Replace `hide-input` with `remove-input`
VeckoTheGecko Jul 18, 2026
cebcfb4
Replace `hide-output` with `remove-output`
VeckoTheGecko Jul 18, 2026
3a906fe
[pre-commit.ci] auto fixes from pre-commit.com hooks
pre-commit-ci[bot] Jul 18, 2026
67ca04b
Fix admonitions
VeckoTheGecko Jul 18, 2026
f5382c7
Fix admonition wrapping and make code blocks python
VeckoTheGecko Jul 18, 2026
907bf73
[pre-commit.ci] auto fixes from pre-commit.com hooks
pre-commit-ci[bot] Jul 18, 2026
6b6648e
set 'nb_execution_timeout = 60'
VeckoTheGecko Jul 18, 2026
6884ddf
Set nb_execution_excludepatterns instead
VeckoTheGecko Jul 18, 2026
afabbf3
Merge remote-tracking branch 'upstream/main' into myst-parser-support
VeckoTheGecko Jul 18, 2026
94ea016
Fix path
VeckoTheGecko Jul 18, 2026
e47ea24
Delete nbsphinx
VeckoTheGecko Jul 19, 2026
12a18f9
Fix unnest code cells from admonitions
VeckoTheGecko Jul 19, 2026
79ef148
Fix level headers and cross-references
VeckoTheGecko Jul 19, 2026
db06168
Merge code cells
VeckoTheGecko Jul 20, 2026
1829fc8
Format fix
VeckoTheGecko Jul 20, 2026
3289472
Merge code blocks
VeckoTheGecko Jul 20, 2026
129afe9
Merge cells
VeckoTheGecko Jul 20, 2026
0ea0ce8
fix links
VeckoTheGecko Jul 20, 2026
826aa85
Review copy edits
VeckoTheGecko Jul 22, 2026
9f5e474
Fix formatting
VeckoTheGecko Jul 22, 2026
2e920dd
Fix crossref
VeckoTheGecko Jul 22, 2026
e07cfd9
Remove nbsphinx config
VeckoTheGecko Jul 22, 2026
109df4b
Merge remote-tracking branch 'upstream/main' into myst-parser-support
VeckoTheGecko Jul 22, 2026
5cee668
Update whats-new
VeckoTheGecko Jul 22, 2026
1015463
Remove nbsphinx metadata from notebook and update conf.py
VeckoTheGecko Jul 22, 2026
4560911
Patch ROMS_ocean_model.ipynb metadata
VeckoTheGecko Jul 22, 2026
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
27 changes: 2 additions & 25 deletions doc/conf.py
Original file line number Diff line number Diff line change
Expand Up @@ -54,8 +54,6 @@
"sphinx.ext.mathjax",
"sphinx.ext.napoleon",
"jupyter_sphinx",
"myst_parser",
"nbsphinx",
"sphinx_autosummary_accessors",
"sphinx.ext.linkcode",
"sphinxext.opengraph",
Expand All @@ -65,6 +63,7 @@
"sphinx_inline_tabs",
"sphinx_remove_toctrees",
"sphinx_llm.txt",
"myst_nb",
]


Expand All @@ -78,29 +77,7 @@
copybutton_prompt_text = r">>> |\.\.\. |\$ |In \[\d*\]: | {2,5}\.{3,}: | {5,8}: "
copybutton_prompt_is_regexp = True

# NBSphinx configuration
nbsphinx_timeout = 600
nbsphinx_execute = "always"
nbsphinx_allow_errors = False
nbsphinx_requirejs_path = ""
# png2x/retina rendering of figues in docs would also need to modify custom.css:
# https://github.com/spatialaudio/nbsphinx/issues/464#issuecomment-652729126
# .rst-content .image-reference img {
# max-width: unset;
# width: 100% !important;
# height: auto !important;
# }
# nbsphinx_execute_arguments = [
# "--InlineBackend.figure_formats=['png2x']",
# ]
nbsphinx_prolog = """
{% set docname = env.doc2path(env.docname, base=None) %}

You can run this notebook in a `live session <https://mybinder.org/v2/gh/pydata/xarray/doc/examples/main?urlpath=lab/tree/doc/{{ docname }}>`_ |Binder| or view it `on Github <https://github.com/pydata/xarray/blob/main/doc/{{ docname }}>`_.

.. |Binder| image:: https://mybinder.org/badge.svg
:target: https://mybinder.org/v2/gh/pydata/xarray/main?urlpath=lab/tree/doc/{{ docname }}
"""
nb_execution_excludepatterns = ["examples/apply_ufunc_vectorize_1d.ipynb"]

# AutoDoc configuration
autosummary_generate = True
Expand Down
21 changes: 11 additions & 10 deletions doc/examples/ROMS_ocean_model.ipynb
Original file line number Diff line number Diff line change
Expand Up @@ -64,7 +64,7 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"### Load in ROMS dataset as an xarray object"
"## Load in ROMS dataset as an xarray object"
]
},
{
Expand All @@ -85,7 +85,7 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"### Add a lazilly calculated vertical coordinates\n",
"## Add a lazilly calculated vertical coordinates\n",
"\n",
"Write equations to calculate the vertical coordinate. These will be only evaluated when data is requested. Information about the ROMS vertical coordinate can be found [here](https://www.myroms.org/wiki/Vertical_S-coordinate).\n",
"\n",
Expand Down Expand Up @@ -119,17 +119,15 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"### A naive vertical slice\n",
"## A naive vertical slice\n",
"\n",
"Creating a slice using the s-coordinate as the vertical dimension is typically not very informative."
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"scrolled": false
},
"metadata": {},
"outputs": [],
"source": [
"ds.salt.isel(xi_rho=50, ocean_time=0).plot()"
Expand Down Expand Up @@ -157,7 +155,7 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"### A plan view\n",
"## A plan view\n",
"\n",
"Now make a naive plan view, without any projection information, just using lon/lat as x/y. This looks OK, but will appear compressed because lon and lat do not have an aspect constrained by the projection."
]
Expand Down Expand Up @@ -206,8 +204,11 @@
}
],
"metadata": {
"execution": {
"timeout": 60
},
"kernelspec": {
"display_name": "Python 3",
"display_name": "Python 3 (ipykernel)",
"language": "python",
"name": "python3"
},
Expand All @@ -221,9 +222,9 @@
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.6.7"
"version": "3.14.6"
}
},
"nbformat": 4,
"nbformat_minor": 2
"nbformat_minor": 4
}
28 changes: 16 additions & 12 deletions doc/examples/apply_ufunc_vectorize_1d.ipynb
Original file line number Diff line number Diff line change
Expand Up @@ -2,9 +2,16 @@
"cells": [
{
"cell_type": "markdown",
"metadata": {},
"metadata": {
"deletable": true,
"editable": true,
"slideshow": {
"slide_type": ""
},
"tags": []
},
"source": [
"## Applying unvectorized functions with `apply_ufunc`"
"# Applying unvectorized functions with `apply_ufunc`"
]
},
{
Expand All @@ -26,7 +33,7 @@
"\n",
" xr_interp(xarray_object, dimension_name, new_coordinate_to_interpolate_to)\n",
"\n",
"### Load data\n",
"## Load data\n",
"\n",
"First let's load an example dataset"
]
Expand Down Expand Up @@ -110,7 +117,7 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"### No errors are raised so our interpolation is working.\n",
"## No errors are raised so our interpolation is working.\n",
"\n",
"This function consumes and returns numpy arrays, which means we need to do a lot of work to convert the result back to an xarray object with meaningful metadata. This is where `apply_ufunc` is very useful.\n",
"\n",
Expand Down Expand Up @@ -155,7 +162,7 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"### `exclude_dims`"
"## `exclude_dims`"
]
},
{
Expand Down Expand Up @@ -197,7 +204,7 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"### Core dimensions\n",
"## Core dimensions\n",
"\n"
]
},
Expand Down Expand Up @@ -326,7 +333,7 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"### Vectorization with `np.vectorize`"
"## Vectorization with `np.vectorize`"
]
},
{
Expand Down Expand Up @@ -484,7 +491,7 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"### Parallelization with dask\n",
"## Parallelization with dask\n",
"\n"
]
},
Expand Down Expand Up @@ -547,7 +554,7 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"### High performance vectorization: gufuncs, numba & guvectorize\n",
"## High performance vectorization: gufuncs, numba & guvectorize\n",
"\n"
]
},
Expand Down Expand Up @@ -714,9 +721,6 @@
"pygments_lexer": "ipython3",
"version": "3.8.10"
},
"nbsphinx": {
"allow_errors": true
},
"org": null,
"toc": {
"base_numbering": 1,
Expand Down
14 changes: 4 additions & 10 deletions doc/examples/area_weighted_temperature.ipynb
Original file line number Diff line number Diff line change
Expand Up @@ -47,9 +47,7 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"### Data\n",
"\n",
"Load the data, convert to celsius, and resample to daily values"
"## Data\n\nLoad the data, convert to celsius, and resample to daily values"
]
},
{
Expand Down Expand Up @@ -104,9 +102,7 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"### Creating weights\n",
"\n",
"For a rectangular grid the cosine of the latitude is proportional to the grid cell area."
"## Creating weights\n\nFor a rectangular grid the cosine of the latitude is proportional to the grid cell area."
]
},
{
Expand All @@ -129,7 +125,7 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"### Weighted mean"
"## Weighted mean"
]
},
{
Expand Down Expand Up @@ -166,9 +162,7 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"### Plot: comparison with unweighted mean\n",
"\n",
"Note how the weighted mean temperature is higher than the unweighted."
"## Plot: comparison with unweighted mean\n\nNote how the weighted mean temperature is higher than the unweighted."
]
},
{
Expand Down
4 changes: 2 additions & 2 deletions doc/examples/monthly-means.ipynb
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,7 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"#### Open the `Dataset`"
"## Open the `Dataset`"
]
},
{
Expand All @@ -58,7 +58,7 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"#### Now for the heavy lifting:\n",
"## Now for the heavy lifting:\n",
"We first have to come up with the weights,\n",
"- calculate the month length for each monthly data record\n",
"- calculate weights using `groupby('time.season')`\n",
Expand Down
Loading
Loading