einfachen Graph plotten mit "abhängiger" x-Achse
Verfasst: Donnerstag 29. Dezember 2016, 17:33
Hallo,
ich habe ein bestimmt ganz simples Problem, habe auch schon viel rumprobiert und versucht zu recherchieren, aber da ich absolut keine Ahnung habe, hat es das irgendwie nicht gebracht.
Und zwar möchte ich schlicht und einfach folgende Funktion plotten:
1/np.sqrt(1+(x/1700)**2)
Nun möchte ich das ganze aber nicht über x auftragen, also ich möchte nicht: plt.plot(x,1/np.sqrt(1+(x/1700)**2)), sondern ich möchte es über ln(1700/x) auftragen.
Also so etwas in dem Stil:
plt.plot(np.log(1700/x) , 1/np.sqrt(1+(x/1700)**2))
Geht so was prinzipiell?
Der Wertebereich von x soll dabei zwischen 159 und 160000 liegen, was ich so darstellen würde: x=np.arange(159,160000)
Ich bekomme jedoch immer keinen Graphen und nur eine Fehlermeldung, die sagt
RuntimeWarning: divide by zero encountered in log (dass ich nicht durch 0 teilen sollte, ist mir klar, aber das tue ich doch gar nicht?)
bzw invalid value encountered in subtract
return np.amin(x[1:] - x[0:-1]) >= 0
was ich gar nicht verstehe.
Ich wurde mit python mehr oder minder ins kalte Wasser geschmissen und muss es nur nutzen um ein paar Messergebnisse zu veranschaulichen und habe eigentlich ehrlich gesagt keine Ahnung davon.
Ich sehe ein, dass meine Frage vllt ziemlich dumm ist, aber ich würde mich wirklich sehr freuen, wenn jmd kurz drüber nachdenkt und mir vllt meinen Denkfehler erklärt.
Vielen Dank!
ich habe ein bestimmt ganz simples Problem, habe auch schon viel rumprobiert und versucht zu recherchieren, aber da ich absolut keine Ahnung habe, hat es das irgendwie nicht gebracht.
Und zwar möchte ich schlicht und einfach folgende Funktion plotten:
1/np.sqrt(1+(x/1700)**2)
Nun möchte ich das ganze aber nicht über x auftragen, also ich möchte nicht: plt.plot(x,1/np.sqrt(1+(x/1700)**2)), sondern ich möchte es über ln(1700/x) auftragen.
Also so etwas in dem Stil:
plt.plot(np.log(1700/x) , 1/np.sqrt(1+(x/1700)**2))
Geht so was prinzipiell?
Der Wertebereich von x soll dabei zwischen 159 und 160000 liegen, was ich so darstellen würde: x=np.arange(159,160000)
Ich bekomme jedoch immer keinen Graphen und nur eine Fehlermeldung, die sagt
RuntimeWarning: divide by zero encountered in log (dass ich nicht durch 0 teilen sollte, ist mir klar, aber das tue ich doch gar nicht?)
bzw invalid value encountered in subtract
return np.amin(x[1:] - x[0:-1]) >= 0
was ich gar nicht verstehe.
Ich wurde mit python mehr oder minder ins kalte Wasser geschmissen und muss es nur nutzen um ein paar Messergebnisse zu veranschaulichen und habe eigentlich ehrlich gesagt keine Ahnung davon.
Ich sehe ein, dass meine Frage vllt ziemlich dumm ist, aber ich würde mich wirklich sehr freuen, wenn jmd kurz drüber nachdenkt und mir vllt meinen Denkfehler erklärt.
Vielen Dank!