matplotlib / matplotlib/mplfinance
The use of `returnfig=True` creates multiple figures when using ipywidgets
Dieses Issue hat noch niemand übernommen.
- Vorherrschende Sprache
- Python
- Sterne
- 4.4k
- Forks
- 678
- PR-Merge-Kennzahlen
- Keine gemergten PRs in 30 T.
Beschreibung
**Describe the bug**
If you provide returnfig=True or use your own axes, updating the ipywidgets produces additional plots.
**To Reproduce**
this example uses 15 min klines, but that doesn't matter.
```python
@interact(
start_pos = widgets.FloatSlider(value=0, max=len(df.index) - 1 - 7 * 96, min=0, step=1),
length = widgets.FloatSlider(value=7 * 96, max=7 * 96, min=96, step=96),
)
def plot_func(start_pos, length):
start_pos, length = int(start_pos), int(length)
ldf = df.iloc[start_pos:start_pos + length]
print(ldf.index[0], ' - ', ldf.index[-1])
mpf.plot(ldf, style='yahoo', figsize=(20,5), returnfig=True)
#print([ str(ax) for ax in axlist])
```
**Expected behavior**
When using ipywidgets and updateing the slider, the reloading of the plot_func produces an additional figure each time you update the widget. This shouldn't be. When your don't use returnfig (or don't add ax and volume by your own figure) this behaviour does not accure.
jupyter lab
mplfinance 0.12.10b0
**Screenshots**

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
Reproduziere das Problem in JupyterLab mit der gezeigten plot_func, ipywidgets, mplfinance und returnfig=True. Beobachte zunächst die Figure-Erstellung, während die Schieberegler aktualisiert werden, und verfolge dann den Einstiegspunkt des Plottings und die Handhabung der Figure. Erledigt ist es, wenn wiederholte Widget-Aktualisierungen nur den aktuellen Plot hinterlassen, anstatt Figures hinzuzufügen.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Bewertung
- Tech-Stack
- jupyter, matplotlib, python
- Bereich
- data-visualization
- Issue-Typ
- Bug
- Schwierigkeit
- 4/5
- Geschätzter Aufwand
- 3-5 Tage
- Aktivitätsstatus
- Veraltet
- Klarheit
- Größtenteils klar
- Anfängerfreundlichkeit
- 35/100