ich bemühe mich, aus Messwerten einen 3D Surface Plot zu erstellen. Hierzu habe ich zunächst aus dem Internet eine coole Funktion herausgesucht und mir aus jener x-, y- und z-Werte generiert. Diese Werte lese ich jeweils aus einer txt Datei aus und hinterlege Sie separat in Listen (x: x_Werte, y: y_Werte, z: z_Werte)
Nun habe ich mit den Werten der x_Werte und y_Werte ein Meshgrid erzeugt und fortlaufend dann mit den Werten aus z_Werte einen 3D Surface Plot erzielt.
Nun sieht diese Oberfläche ganz und gar nicht der ähnlich, die sie eigentlich darstellen soll...
Da mein Erfahrung recht gering ist, wollte ich euch um Hilfe bitte, was mein Fehler ist:)
(ganz unten werde ich euch - falls nötig - die Werte der Listen einfügen)
Der relevante Teil meines Skripts ist folgender:
Code: Alles auswählen
import numpy as np
import tkinter as tk
from scipy.stats import linregress
import sys
import scipy.interpolate as interp
import matplotlib.pyplot as plt
x_Werte=[]
y_Werte=[]
z_Werte=[]
# durch Auslesen der txt werden den Listen Werte eingefügt
x=x_Werte
y=y_Werte
X,Y,=np.meshgrid(x,y)
#print("X= ")
#print(X)
#print("Y = ")
#print(Y)
Z = interp.griddata((x_Werte,y_Werte),z_Werte,(X,Y))
fig = plt.figure()
ax = fig.add_subplot(111, projection='3d')
ax.plot_surface(X,Y,Z,cstride=1,rstride=1)
plt.show()
(Das Bild meines Plots kann ich hier ja nicht anzeige, da es nicht im Internet verfügbar ist. Allerdings sieht es auch, wie eine aus Wut zusammengeknüllte Papierkugel)
Hier nun die Werte meiner Listen:
Code: Alles auswählen
x_Werte=[-0.0, -0.0, -0.0, 0.0, 0.0, 0.0, -0.0, -0.0, -0.0, 0.0, 0.0, 0.0, -0.0, -0.0, -0.0, 0.0, 0.0, 0.0, -0.0, -0.0, -1.6781430581529049, -1.8222605237693539, -0.2910000676172271, 1.5078045086866092, 1.920340573300732, 0.5673243709264525, -1.3072872417272239, -1.9799849932008908, -0.8322936730942848, 1.0806046117362795, 2.0, 1.0806046117362795, -0.8322936730942848, -1.9799849932008908, -1.3072872417272239, 0.5673243709264525, 1.920340573300732, 1.5078045086866092, -0.2910000676172271, -1.8222605237693539, -3.3562861163058098, -3.6445210475387078, -0.5820001352344542, 3.0156090173732184, 3.840681146601464, 1.134648741852905, -2.6145744834544478, -3.9599699864017817, -1.6645873461885696, 2.161209223472559, 4.0, 2.161209223472559, -1.6645873461885696, -3.9599699864017817, -2.6145744834544478, 1.134648741852905, 3.840681146601464, 3.0156090173732184, -0.5820001352344542, -3.6445210475387078, -5.034429174458714, -5.466781571308061, -0.8730002028516812, 4.523413526059827, 5.761021719902196, 1.7019731127793576, -3.921861725181672, -5.939954979602673, -2.4968810192828546, 3.2418138352088386, 6.0, 3.2418138352088386, -2.4968810192828546, -5.939954979602673, -3.921861725181672, 1.7019731127793576, 5.761021719902196, 4.523413526059827, -0.8730002028516812, -5.466781571308061, -6.7125722326116195, -7.2890420950774155, -1.1640002704689083, 6.031218034746437, 7.681362293202928, 2.26929748370581, -5.2291489669088955, -7.919939972803563, -3.3291746923771393, 4.322418446945118, 8.0, 4.322418446945118, -3.3291746923771393, -7.919939972803563, -5.2291489669088955, 2.26929748370581, 7.681362293202928, 6.031218034746437, -1.1640002704689083, -7.2890420950774155]
y_Werte=[0.0, -0.0, -0.0, -0.0, 0.0, 0.0, 0.0, -0.0, -0.0, -0.0, 0.0, 0.0, 0.0, 0.0, -0.0, -0.0, -0.0, 0.0, 0.0, 0.0, 1.0880422217787395, -0.8242369704835132, -1.9787164932467636, -1.3139731974375781, 0.5588309963978517, 1.917848549326277, 1.5136049906158564, -0.2822400161197344, -1.8185948536513634, -1.682941969615793, 0.0, 1.682941969615793, 1.8185948536513634, 0.2822400161197344, -1.5136049906158564, -1.917848549326277, -0.5588309963978517, 1.3139731974375781, 1.9787164932467636, 0.8242369704835132, 2.176084443557479, -1.6484739409670264, -3.957432986493527, -2.6279463948751562, 1.1176619927957034, 3.835697098652554, 3.027209981231713, -0.5644800322394689, -3.637189707302727, -3.365883939231586, 0.0, 3.365883939231586, 3.637189707302727, 0.5644800322394689, -3.027209981231713, -3.835697098652554, -1.1176619927957034, 2.6279463948751562, 3.957432986493527, 1.6484739409670264, 3.2641266653362186, -2.4727109114505397, -5.9361494797402905, -3.9419195923127344, 1.6764929891935552, 5.7535456479788305, 4.540814971847569, -0.8467200483592032, -5.45578456095409, -5.048825908847379, 0.0, 5.048825908847379, 5.45578456095409, 0.8467200483592032, -4.540814971847569, -5.7535456479788305, -1.6764929891935552, 3.9419195923127344, 5.9361494797402905, 2.4727109114505397, 4.352168887114958, -3.2969478819340527, -7.914865972987054, -5.2558927897503125, 2.235323985591407, 7.671394197305108, 6.054419962463426, -1.1289600644789377, -7.274379414605454, -6.731767878463172, 0.0, 6.731767878463172, 7.274379414605454, 1.1289600644789377, -6.054419962463426, -7.671394197305108, -2.235323985591407, 5.2558927897503125, 7.914865972987054, 3.2969478819340527]
z_Werte=[-2.5, -2.25, -2.0, -1.75, -1.5, -1.25, -1.0, -0.75, -0.5, -0.25, 0.0, 0.25, 0.5, 0.75, 1.0, 1.25, 1.5, 1.75, 2.0, 2.25, -2.5, -2.25, -2.0, -1.75, -1.5, -1.25, -1.0, -0.75, -0.5, -0.25, 0.0, 0.25, 0.5, 0.75, 1.0, 1.25, 1.5, 1.75, 2.0, 2.25, -2.5, -2.25, -2.0, -1.75, -1.5, -1.25, -1.0, -0.75, -0.5, -0.25, 0.0, 0.25, 0.5, 0.75, 1.0, 1.25, 1.5, 1.75, 2.0, 2.25, -2.5, -2.25, -2.0, -1.75, -1.5, -1.25, -1.0, -0.75, -0.5, -0.25, 0.0, 0.25, 0.5, 0.75, 1.0, 1.25, 1.5, 1.75, 2.0, 2.25, -2.5, -2.25, -2.0, -1.75, -1.5, -1.25, -1.0, -0.75, -0.5, -0.25, 0.0, 0.25, 0.5, 0.75, 1.0, 1.25, 1.5, 1.75, 2.0, 2.25]