ich gehe gerade in die Oberstufe und habe in der Freizeit etwas mit Python angefangen. Das meiste habe ich mir durch Recherchen im Internet angeeignet, aber irgendwie komme ich gerade ohne Hilfe nicht weiter. Ich möchte gerne eine Kurvendiskussion in Python programmieren und die Ergebnisse plotten. Ganz konkret geht es darum, dass ich die Funktionen (hier werden verschiedene Textdateien eingelesen) und deren Ableitungen in einem Plot auf zwei verschiedenen y-Achsen darstellen möchte. Hier kam ich mit den einfachen Befehlen wie plt.figure(), etc. nicht weiter, weshalb ich auf spines und ticks umsteigen musste (was mir ehrlich gesagt nicht ganz einfach gefallen ist, da die Vielfalt für mich als Anfänger hier sehr groß erscheint). Jetzt erhalte ich zwar zwei y-Achsen in einem Diagramm, leider werden die Daten aus unterschiedlichen Dateien jetzt nicht mehr in einer Figure, sondern in jeweil einer getrennten dargestellt (trotz for-schleife, die bisher genau den Sinn hatte, das Ergebnis aus beiden Textdateien in einer Figure darzustellen). Ich vermute das "Problem" in plt.subplots() der immer eine neue Figure öffnet. Ich habe es mal mit plt.figure() versucht, leider ist dies aber "not iterable".
Hilfe wird dankend angenommen

Code: Alles auswählen
import numpy as np
import matplotlib.pyplot as plt
PATHS = ["C:\Desktop\\1sinx.txt",
"C:\Desktop\\2sin2x.txt"]
##############Daten einlesen##############
def read(PATH):
a, b = np.loadtxt(PATH, unpack = True)
return a, b
##############Daten bearbeiten##############
for i in range(len(PATHS)):
x, y = read(PATHS[i])
dx = np.gradient(x)
dy = np.gradient(y)
dydx = dy/dx
fig1, ax1 = plt.subplots()
ax1.plot(x, y)
ax1.set_xlabel('x [a.u.]')
ax1.set_ylabel('y [a.u.]', color = 'b')
ax1.tick_params('y', colors = 'b')
ax2 = ax1.twinx()
ax2.plot(x, dydx, 'r')
ax2.set_ylabel('dydx [a.u.]', color = 'r')
ax2.tick_params('dydx', colors = 'r')
fig1.tight_layout()
plt.show()
Vielen Dank vorab und Gruß
Sanjo