我想繪製一個使用matplotlib的通用三次函數曲線。我想繪製由函數定義的曲線,如:x^3 + y^3 + y^2 + 2xy^2 = 0。這可能嗎?如何使用matplotlib繪製非線性函數?
2
A
回答
4
一個明顯的方法,這樣做是爲了發現(x,y)
對滿足的關係,通過數值求解方程。
from scipy import optimize
f=lambda x, y: (x**3+y**3+y**2+2*x*y*y-0)**2
y_range=linspace(-1, 1, 100)
x_range=[optimize.fmin(f,0,args=(y,), disp=0) for y in y_range]
xr=linspace(-1,1)
yr=linspace(-1,1)
X, Y=meshgrid(xr, yr)
Z=f(X, Y)
plt.plot(x_range, y_range, 'k')
plt.contourf(xr, yr, Z, levels=linspace(0,0.001,51), alpha=0.5)
plt.colorbar()
黑線是你想要的。輪廓只是爲了顯示函數的行爲如何。optimize.fmin()
不是最有效的求解器,只是簡單一些。
當x
或y
的絕對值很大時,您基本上可以繪製x+0.4496y=0
,您不需要執行上述所有操作。
0
我的2美分:
的x^3 + Y^3 + Y^2 + 2XY^2 = 0
Y 1 2 = -x^3-Y^3-2xy^2
Y 1 2 > 0 => -x^3-y^3-2xy^2> 0 => x^3 + y^3 + 2xy^2 < 0 =>
x(x^2 + 2y^2)+ y^(x^2 + 2y^2)< 0 => x(x^2 + 2y^2)< -y^3 =>(x^2 + 2y^2)< -y^3/x
)=> 0 < -y^3/x => 0> y^3/x =>
(x> 0 & & y < 0)|| (X & Y> 0)
您的圖形將跨越2和第4象限跨越
相關問題
- 1. 如何使用matplotlib繪製折線圖
- 2. 如何用matplotlib繪製平方函數
- 3. 使用cos函數繪製matplotlib
- 4. Python Matplotlib:繪製線性不等式函數
- 5. 如何在Julia中使用Gadfly.jl繪製線性函數?
- 6. 用matplotlib繪製細分線
- 7. 使用matplotlib繪製非對稱誤差線
- 8. 如何在Python中使用Matplotlib繪製一個步驟函數?
- 9. 繪製座標線使用Matplotlib
- 10. Python使用Matplotlib繪製拋物線圖
- 11. 用matplotlib繪製二次函數/模型
- 12. 如何使用matplotlib使用非數值來繪製一個陰謀?
- 13. 使用通用函數繪製線d3js
- 14. 如何使用D3對角線函數繪製曲線?
- 15. 使用Matplotlib在3D中繪製線性模型
- 16. 用R中的線繪製非線性數據點
- 17. 如何繪製Matplotlib中的非數字數據
- 18. 如何使用matplotlib繪製熱圖?
- 19. 如何使用matplotlib繪製圖形?
- 20. 如何使用matplotlib繪製pyaudio輸入?
- 21. Matplotlib不繪製曲線
- 22. 如何改變使用matplotlib和python繪製多線的顏色?
- 23. 如何使用Matplotlib的ConnectionPatch繪製虛線?
- 24. 如何在python中用matplotlib繪製函數結果
- 25. 如何繪製從函數調用的matplotlib?
- 26. 在R中繪製非線性迴歸
- 27. matplotlib用nans繪製數據
- 28. 在繪製matplotlib二維函數
- 29. Matplotlib:繪製多重定義函數
- 30. matplotlib .plot函數多次繪製
這是什麼幫助我http://stackoverflow.com/questions/12935098/how-to-plot-line-polygonal-chain-with-numpy-scipy-matplotlib-with-minimal-smoo – Jag
^不完全是什麼我在找,但謝謝你! – MYV