【python】陰関数をプロット(Matplotlib編)

heart-function-matplotlibpython

はじめに

pythonで陰関数を描画する方法が分からなかったのでメモ
今回はMatplotlibを直接使用します。sympy plottingを使う方法はこちら
陰関数としてハート関数 $$(x^2+y^2-1)^3=x^2y^3$$を使う。

Matoplotlibでハート関数をプロット

import matplotlib.pyplot as plt
import numpy as np

delta = 0.001
xrange = np.arange(-1.5, 1.5, delta)
yrange = np.arange(-1.5, 1.5, delta)
X, Y = np.meshgrid(xrange,yrange)

Z=(X**2+Y**2-1)**3-X**2*Y**3
plt.grid()
plt.contour(X, Y, Z, [0],colors="red")
plt.show()
heart-function-math

matplotlib.pyplot.contourはもともと等高線を書く関数
plt.contour(X, Y, Z, [0],colors=”red”)の[0]の部分で描く高さをしている。
よって$$(x^2+y^2-1)^3-x^2y^3$$が0となる部分を描くことが出来る。

参考

コメント