Fix notebook `intermediate/indexing/why-an-index.ipynb`

Offen Anfängerfreundlich
#376 0 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Dieses Issue hat noch niemand übernommen.

Bewertung

Schwierigkeit
2/5
Geschätzter Aufwand
1-3 Stunden
Anfängerfreundlichkeit
75/100
Issue-Typ
Bug
Klarheit
Klar beschrieben
Aktivitätsstatus
Ruhig
Tech-Stack
jupyter-notebook, python
Bereich
data

Rechercherichtung

Öffne intermediate/indexing/why-an-index.ipynb und führe es von oben bis unten aus. Konzentriere dich dabei auf Cell In[16], in der periodic.sel(angle=q) eine eindimensionale angle-Dimension erzeugt. Überprüfe das Indexierungsverhalten bei Array-Eingaben und aktualisiere das Notebook so, dass die geplotteten Werte zu den 721 Elementen von q passen; das vollständige erneute Ausführen des Notebooks ohne den gemeldeten Dimensionsfehler ist damit erledigt.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Beschreibung

This notebook (looking at 54df4e2fc01e51905210793f7aa01df0d87be86b ) doesn't run top to bottom

Cell In[16], [line 7](vscode-notebook-cell:?execution_count=16&line=7)
      3 periodic_temp = periodic.sel(angle=q)
      4 
      5 fig, ax = plt.subplots(figsize=(9, 4))
      6 ax.scatter(sensor_fold, metal_ring.values, color="0.3", s=45, zorder=5, label="the sensors")
----> [7](vscode-notebook-cell:?execution_count=16&line=7) ax.plot(q, periodic_temp, color="tab:green", lw=2.5, label="PeriodicIndex .sel")
      8 ax.plot(q, default_temp, color="tab:red", lw=2, label="default index")
      9 ax.axvline(0, color="0.6", ls=":", lw=1)
     10 ax.set_xlabel("query angle (°)")

File ~/coding/repos/xarray-tutorial/.pixi/envs/default/lib/python3.14/site-packages/matplotlib/axes/_axes.py:1792, in Axes.plot(self, scalex, scaley, data, *args, **kwargs)
   1549 """
   1550 Plot y versus x as lines and/or markers.
   1551 
   (...)   1789 (``'green'``) or hex strings (``'#008000'``).
   1790 """
   1791 kwargs = cbook.normalize_kwargs(kwargs, mlines.Line2D)
-> [1792](https://file+.vscode-resource.vscode-cdn.net/Users/Hodgs004/coding/repos/xarray-tutorial/intermediate/indexing/~/coding/repos/xarray-tutorial/.pixi/envs/default/lib/python3.14/site-packages/matplotlib/axes/_axes.py:1792) lines = [*self._get_lines(self, *args, data=data, **kwargs)]
   1793 for line in lines:
   1794     self.add_line(line)

File ~/coding/repos/xarray-tutorial/.pixi/envs/default/lib/python3.14/site-packages/matplotlib/axes/_base.py:331, in _process_plot_var_args.__call__(self, axes, data, return_kwargs, *args, **kwargs)
    329     this += args[0],
...
    511 if x.ndim > 2 or y.ndim > 2:
    512     raise ValueError(f"x and y can be no greater than 2D, but have "
    513                      f"shapes {x.shape} and {y.shape}")

ValueError: x and y must have same first dimension, but have shapes (721,) and (1,)

I don't think the index is working as expected when angle is an array input.

periodic_temp = periodic.sel(angle=q) # `q.shape` is `(721,)`
# but `periodic_temp.sizes` is `Frozen({'angle': 1})`

cc @ianhi

Vorherrschende Sprache
Jupyter Notebook
Sterne
204
Forks
121
PR-Merge-Kennzahlen
Keine gemergten PRs in 30 T.

Beitragsleitfaden

Beitragsleitfaden öffnen

Erste Schritte

  1. Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
  3. Forken Sie das Repository und arbeiten Sie in einem Branch.
  4. Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.

Mehr aus xarray-contrib/xarray-tutorial

Alle Issues in xarray-contrib/xarray-tutorial

Ähnliche Issues

Weitere Issues zu Data Engineering

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.