habe folgenden Code zum Testen erfolgreich zusammengestellt:
Code: Alles auswählen
#!/usr/bin/env python3
import numpy as np
import matplotlib.pyplot as plt
depth = np.loadtxt("result.txt",
delimiter = ",",
skiprows = 1,
usecols = 1)
diameter = np.loadtxt("result.txt",
delimiter = ",",
skiprows = 1,
usecols = 2)
ziel = np.array([2.5,2.5])
x1 = diameter * -0.5
x2 = diameter * 0.5
y1 = abs(depth) * -1
fig, ax= plt.subplots()
ax.plot(ziel * -0.5, y1)
ax.plot(ziel * 0.5, y1)
ax.fill_betweenx(y1, x1, x2, color="green", alpha=.3)
plt.show()
Code: Alles auswählen
def plotdsv(self, *args):
self.fig = Figure(figsize = (3, 5), facecolor = "white")
canvas = FigureCanvasTkAgg(self.fig, master=self)
canvas.get_tk_widget().grid(column=9, row=1, rowspan=18)
self.axis = self.fig.add_subplot(111)
self.axis.set_xlabel("Durchmesser [m]")
self.axis.set_ylabel("Tiefe [m]")
okdsv = abs(self.ok_dsv.get())
ukdsv = abs(self.uk_dsv.get())
zield = abs(self.zield.get())
uksensor = abs(self.wiredepth.get())
self.axis.set_xlim([-zield,zield])
self.axis.set_ylim([-ukdsv-1,0.75])
self.axis.plot([0,0],[0.75,-uksensor], color = "green")
self.axis.plot([-zield-2,zield+2],[0,0], color = "brown")
self.axis.plot([zield * -0.5, zield * 0.5, zield * 0.5, zield * -0.5, zield * -0.5],
[-okdsv, -okdsv, -ukdsv, -ukdsv, -okdsv],
"--", label = "DSV geplant", color = "blue")
if os.path.exists("result.txt"):
print ("file ist da")
self.t_result = np.loadtxt("result.txt",
delimiter = ",",
skiprows = 1,
usecols = 1)
self.d_result = np.loadtxt("result.txt",
delimiter = ",",
skiprows = 1,
usecols = 2)
self.axis.plot(self.d_result * -0.5, abs(self.t_result) * -1, color = "orange")
self.axis.plot(self.d_result * 0.5, abs(self.t_result) * -1, color = "orange")
with open ("result.txt") as file:
linenumbers = len(file.readlines())
print("es sind", linenumbers, "Zeilen")
if linenumbers > 2:
print("schraffur")
y1 = abs(self.t_result) * -1
x1 = self.d_result * -0.5
x2 = self.d_result * 0.5
self.axis.fill_between(y1, x1, x2, color = "green", alpha = .3)
else:
print("keine Schraffur")