Plotten in Visual Studio Code

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Antworten
MRO5494
User
Beiträge: 27
Registriert: Dienstag 26. November 2019, 16:20

Hallo Leute,

Ich möchte mir ein einfachen Graphen plotten lassen.

Der Code ist der folgende:
import matplotlib.pyplot as plt
plt.plot([-1, -4,5, 16, 23, 15, 59])
plt.show()

Wenn ich dieses Skript über das Terminal laufen lasse, gibt er mir den Graphen aus.

Bei Visual Studio Code hingegen geschieht nichts. Das Skript läuft durch aber, es erscheint kein Diagramm.

Kennt jemand das Problem?

Mit freundlichen Grüßen

MRO
Jankie
User
Beiträge: 592
Registriert: Mittwoch 26. September 2018, 14:06

Bei mir funktioniert es und das Diagramm öffnet in einem neuen Fenster. Meine installierten Extensions sind Python und das Deutsche Sprachpaket.
MRO5494
User
Beiträge: 27
Registriert: Dienstag 26. November 2019, 16:20

Ich benutze ebenfalls nur das python- und anaconda-Package, aber es funktioniert trotzdem nicht.
Mein Betriebssystem ist Ubuntu falls das eine Rolle spielt.
Jankie
User
Beiträge: 592
Registriert: Mittwoch 26. September 2018, 14:06

Was gibt das hier bei dir aus?

Code: Alles auswählen

import matplotlib
print(matplotlib.get_backend())
MRO5494
User
Beiträge: 27
Registriert: Dienstag 26. November 2019, 16:20

In Visual Studio Code agg und im Terminal Qt5Agg
Jankie
User
Beiträge: 592
Registriert: Mittwoch 26. September 2018, 14:06

Weiß nicht ob das Funktioniert bzw. eine gute Lösung ist, aber versuch das hier mal im VSCode:

Code: Alles auswählen

import matplotlib.pyplot as plt

plt.switch_backend('Qt5Agg')
plt.plot([-1, -4,5, 16, 23, 15, 59])
plt.show()
MRO5494
User
Beiträge: 27
Registriert: Dienstag 26. November 2019, 16:20

Dann kommt folgender Fehler:
ImportError: Cannot load backend 'Qt5Agg' which requires the 'qt5' interactive framework, as 'headless' is currently running
Sirius3
User
Beiträge: 18260
Registriert: Sonntag 21. Oktober 2012, 17:20

@MRO5494: Du hast zwei verschiedene Python-Varianten auf Deinem Rechner, im einen ist Qt installiert im anderen nicht.
MRO5494
User
Beiträge: 27
Registriert: Dienstag 26. November 2019, 16:20

Hallo Leute ich bekomme es immer noch nicht hin Diagramme zu plotten.

Wie kann ich das agg zu tkagg oder Qt5agg ändern?
MRO5494
User
Beiträge: 27
Registriert: Dienstag 26. November 2019, 16:20

An verschiedenen Versionen von Python liegt es nicht.

Ich habe beide Environments in Visual Studio Code versucht und nichts hat geholfen.

Ich habe hier einen Link gefunden, der sich mit dem Problem beschäftigt. Geholfen hat er mir nichts... Ich verzweifle.

https://www.pyimagesearch.com/2015/08/2 ... isplaying/
__deets__
User
Beiträge: 14545
Registriert: Mittwoch 14. Oktober 2015, 14:29

Hast du Sirius3 Bemerkung gesehen? Was ist der Inhalt von sys.executable einmal in VS Code & einmal in der Umgebung (Shell) wo es geht?
MRO5494
User
Beiträge: 27
Registriert: Dienstag 26. November 2019, 16:20

In VS Code wird ausgegeben: /home/usr/anaconda3/bin/python
Im Terminal folgendes: /usr/bin/python3

Wenn ich die Environment in VS Code mit dem Pfad vom Terminal angebe kommt folgender Fehler:
Unable to init server: Could not connect: Connection refused
Unable to init server: Verbindung ist gescheitert: Connection refused

(test.py:4674): Gdk-CRITICAL **: 10:10:32.834: gdk_cursor_new_for_display: assertion 'GDK_IS_DISPLAY (display)' failed
Benutzeravatar
sparrow
User
Beiträge: 4535
Registriert: Freitag 17. April 2009, 10:28

Du hast zwei verschiedene Umgebungen, in denen Python ausgeführt wird. Das siehst du an den unterschiedlichen Pfaden zum Interpreter.
Wenn du also auf der Konsole etwas installieren willst, das in VS Code verfügbar ist, musst du dort die entsprechende Umgebung verwenden. Ob es dafür reicht, den Pythonpath darauf umzubiegen, weiß ich nicht. Ich arbeite nicht mit VS Code. Was hast du versucht, dass es zu dem Fehler kam?
MRO5494
User
Beiträge: 27
Registriert: Dienstag 26. November 2019, 16:20

Ich habe nun den gleichen Pfad hinterlegt und es wird mir bei beiden Ausgaben, also sowohl im Terminal als auch in VS Code backend TkAgg ausgegeben. Im Terminal wird weiterhin geplottet in VS Code jedoch nicht und erhalte in VS Code folgenden Fehler: tkinter.TclError: no display name and no $DISPLAY environment variable
Sirius3
User
Beiträge: 18260
Registriert: Sonntag 21. Oktober 2012, 17:20

Dann mußt Du in der VS-Code-Shell eben DISPLAY richtig setzen.
MRO5494
User
Beiträge: 27
Registriert: Dienstag 26. November 2019, 16:20

Sry meine dumme Frage aber wie mach ich das richtig ich probiere schon die ganze Zeit rum.

Habe dies in meine VS Code Shell eingegeben aber passiert nichts...
DISPLAY=:0 python3 /home/mario/Schreibtisch/test.py
__deets__
User
Beiträge: 14545
Registriert: Mittwoch 14. Oktober 2015, 14:29

Da fehlt ein export- aber ich dachte du machst das in VS Code? Da kannst du bestimmt auch Umgebungsvariablen setzten, zur Not aber auch über os.environ.
Antworten