Also habe ich ein paar Datenpunkte gemacht und ich habe sie geplottet. Dann wollte ich seine kubische Funktion interpolieren und plotten. Als ich jedoch geplottet habe, sind nur 3 der Funktionen aufgetaucht. Wie mache ich es so, dass alle Funktionen angezeigt werden? Außerdem, wenn ich die interpolierte lineare Funktion zeichnete, zeigten sich alle Linien nett.Kubische Interpolation zeigt nicht, aber linear?
xnew = np.linspace(0.0414, 1.0414, 10000)
z, mass1, mass2, mass3, mass4, mass5, mass6, mass7 = np.loadtxt("BHMF_bluemassfinal.dat", usecols = [0,1,2,3,4,5,6,7], unpack = True)
axes[0].plot(z, mass1,'bo')
axes[0].plot(z, mass2, 'bo')
axes[0].plot(z, mass3, 'bo')
axes[0].plot(z, mass4, 'bo')
axes[0].plot(z, mass5, 'bo')
axes[0].plot(z, mass6, 'bo')
axes[0].plot(z, mass7, 'bo')
axes[0].plot(xnew, fb1(xnew), 'k')
axes[0].plot(xnew, fb2(xnew), 'k')
axes[0].plot(xnew, fb3(xnew), 'k')
axes[0].plot(xnew, fb4(xnew), 'k')
axes[0].plot(xnew, fb5(xnew), 'k')
axes[0].plot(xnew, fb6(xnew), 'k')
axes[0].plot(xnew, fb7(xnew), 'k')
z, mass1, mass2, mass3, mass4, mass5, mass6, mass7 = np.loadtxt("BHMF_greenmassfinal.dat", usecols = [0,1,2,3,4,5,6,7], unpack = True)
axes[1].plot(z, mass1, 'go')
axes[1].plot(z, mass2, 'go')
axes[1].plot(z, mass3, 'go')
axes[1].plot(z, mass4, 'go')
axes[1].plot(z, mass5, 'go')
axes[1].plot(z, mass6, 'go')
axes[1].plot(z, mass7, 'go')
axes[1].plot(xnew, fg1(xnew), 'k')
axes[1].plot(xnew, fg2(xnew), 'k')
axes[1].plot(xnew, fg3(xnew), 'k')
axes[1].plot(xnew, fg4(xnew), 'k')
axes[1].plot(xnew, fg5(xnew), 'k')
axes[1].plot(xnew, fg6(xnew), 'k')
axes[1].plot(xnew, fg7(xnew), 'k')
Von der Datei, aus der ich zeichne, gibt es ein paar NaN-Daten. Vielleicht stoppt das die Interpolation ?? –
Vielleicht. Diese scheinen stellare Massen zu sein, doch du zeichnest sie als eine Funktion der Rotverschiebung auf. Wofür ist das? – Anonymous
Gutes Auge. Ich plane, wie sich die Massen von supermassiven Schwarzen Löchern im Laufe der Zeit entwickeln. –