matplotlib / matplotlib/ipympl
Nesting into HBox collapses plot width
Dieses Issue hat noch niemand übernommen.
- Vorherrschende Sprache
- Jupyter Notebook
- Sterne
- 1.7k
- Forks
- 234
- PR-Merge-Kennzahlen
- Keine gemergten PRs in 30 T.
Beschreibung
Here's another effect of requiring the canvas size explicitly, but somehow isn't visible unless the plot gets dropped into an ipywidgets layout (e.g. by a downstream package).
If the interactive matplotlib is the child of one p-Panel, it's fine. But gets squashed as the child of two p-Panels (regardless of orientation).
Explicitly setting canvas.layout.width fixes it, and propagates to the front-end as expected.
from ipywidgets import HTML, HBox, VBox
from matplotlib.figure import Figure
from ipympl.backend_nbagg import Canvas, FigureManager
figure = Figure()
canvas = Canvas(figure)
canvas.manager = FigureManager(canvas, 0)
axes = figure.add_subplot(1,1,1)
HBox([HBox([HTML(''), canvas])])
HBox([canvas])


Beitragsleitfaden
Erste Schritte
- Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
- Forke das Repository und arbeite in einem Branch.
- Öffne einen Pull Request, der die Issue-Nummer nennt.
Rechercherichtung
Beginne mit dem bereitgestellten Canvas/FigureManager-Reproduzierer in einem Notebook und vergleiche einen Canvas in einer HBox mit demselben Canvas, der in zwei HBoxes verschachtelt ist. Untersuche, wie die Canvas-Größe an ipywidgets-Layouts weitergegeben wird; abgeschlossen ist die Aufgabe, wenn das Diagramm seine Breite beim Verschachteln beibehält, ohne canvas.layout.width explizit zu setzen.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Bewertung
- Tech-Stack
- jupyter-notebook, matplotlib, python
- Bereich
- frontend
- Issue-Typ
- Bug
- Schwierigkeit
- 3/5
- Geschätzter Aufwand
- 1-2 Tage
- Aktivitätsstatus
- Veraltet
- Klarheit
- Größtenteils klar
- Anfängerfreundlichkeit
- 35/100