Matplotlib-Plots in Ubuntu anzeigen (Windows-Subsystem für Linux)

9

So scheint es auf Ubuntu für Windows (Windows-Subsystem für Linux) Leute vorschlagen, wir müssen Agg Backend verwenden und nur Bilder speichern, keine Plots zeigen.

%Vor%

Wie können wir dahin gelangen, wo plt.show () uns ein Bild zeigen würde? Meine aktuelle Option ist es, plot.show () zu überschreiben, um stattdessen einfach einen plot-148123456.png unter / mnt / c / Benutzer / james / plots / in Windows zu speichern und nur ein Explorer-Fenster geöffnet zu haben, in dem die Bilder angezeigt werden.

Ich nehme an, ich könnte diesen Ordner hosten und einen Browser verwenden.

Mein Ziel ist es, einfache Beispiele wie den oben genannten Code ausführen zu können, ohne den Code zu ändern, um die Bilder irgendwo zu übertragen usw. Ich möchte nur, dass das Diagramm in einem Fenster angezeigt wird.

Hat jemand einen vernünftigen Weg gefunden, es zu tun?

    
AwokeKnowing 13.04.2017, 16:14
quelle

2 Antworten

8

Ok, also habe ich es wie folgt funktioniert, obwohl ein Schritt vielleicht nicht notwendig ist. Ich habe Ubuntu unter Windows, mit Anaconda Python 3.6 installiert

  1. Google "xming" (x11 Server) und Download (von sourceforge) / install / run
  2. sudo apt-get install x11-apps
  3. export DISPLAY=localhost:0.0 (füge zu ~/.bashrc hinzu, um permanent zu werden)
  4. sudo apt-get install gnome-calculator (um GTK zu erhalten)
  5. Bearbeiten Sie matplotlibrc und ändern Sie das Backend: in das Backend: TkAgg

für mich matplotlibrc war bei /home/james/anaconda3/lib/python3.6/site-packages/matplotlib/mpl-data/matplotlibrc

Beachten Sie, dass GTKAgg nicht funktioniert hat, daher ist Schritt 4 möglicherweise sinnlos, nicht sicher. Der gnome-calulator hat funktioniert, aber GTK scheint zu funktionieren, aber es sagt, benötigt pygtk noch pip install pygtk hat nicht funktioniert.

Wie auch immer, dieser Code, der in ubuntu auf wsl läuft, funktionierte wie folgt:

%Vor%

'' '

Ergebnis:

Ich habe das Gefühl, dass dies besser durch ein Jupyter-Notebook oder so gemacht wird, aber es ist schön, grundlegende Befehlszeilen-Python-Matplotlib-Funktionalität in Ubuntu für Windows auf Subsystem für Linux

zu haben

BEARBEITEN: Heute habe ich den folgenden Befehl ausgeführt, der Qt5 als Backend installiert hat, und es funktioniert gut mit Qt5Agg als Back-End (vs TkAgg). Dies kann hilfreich sein, wenn Sie etwas anderes auf WSL ausführen, das Qt5 benötigt

sudo apt-get update && sudo apt-get install qtbase5-dev

Um auch Ihre Matplotlibre zu finden, geben Sie Folgendes ein:

python import matplotlib print(matplotlib.matplotlib_fname()) quit()

    
AwokeKnowing 13.04.2017, 18:59
quelle
1

Um matplotlib mit GTKAgg unter Bash unter Ubuntu unter Windows arbeiten zu können, I:

  1. installiert VcXsrv unter Windows (aber Dinge sollten mit Xming genauso funktionieren)
  2. setze DISPLAY wie oben erwähnt [ export DISPLAY=localhost:0.0 (füge zu ~ / .bashrc hinzu, um permanent zu machen]]
  3. ausgeführt sudo pip uninstall matplotlib
  4. gefolgt von sudo apt install python-matplotlib
  5. aktualisiert matplotlibcc, um backend : GTKAgg (statt backend : agg )
  6. zu lesen
  7. Ich habe auch sudo apt-get install python-gtk2-dev ausgeführt, aber das ist möglicherweise nicht notwendig.

Die Deinstallation der pip-installierten matplotlib und Neuinstallation über apt scheint notwendig zu sein, da pip nicht die erforderlichen C-Erweiterungen enthält Führen Sie GTK aus, aber die Apt-Version.

    
marisano 29.10.2017 09:27
quelle