Wie man in Matplotlib einen Kreis zeichnet
-
matplotlib.patches.Circle()
Methode zum Plotten eines Kreises in der Matplotlib - Kreisgleichung zur Darstellung eines Kreises in Matplotlib
- Streudiagramm von Punkten
Um einen Kreis in Matplotlib
zu zeichnen, können wir eine der folgenden Methoden verwenden:
matplotlib.patches.Circle()
Methode- Kreis-Gleichung
- Streudiagramm von Punkten
matplotlib.patches.Circle()
Methode zum Plotten eines Kreises in der Matplotlib
Syntax:
matplotlib.patches.Circle((x, y), r=5, **kwargs)
Dabei ist (x, y)
der Mittelpunkt des Kreises und r
der Radius mit einem Standardwert von 5
.
Wir müssen mit der Methode add_artist
einen Kreis
zu den Achsen hinzufügen, da Circle
eine Unterklasse von Artist
ist.
import matplotlib.pyplot as plt
figure, axes = plt.subplots()
draw_circle = plt.Circle((0.5, 0.5), 0.3)
axes.set_aspect(1)
axes.add_artist(draw_circle)
plt.title("Circle")
plt.show()
Um einen Kreis ohne Füllfarbe zu zeichnen, sollten wir den Parameter Füllung
auf False
setzen.
import matplotlib.pyplot as plt
figure, axes = plt.subplots()
draw_circle = plt.Circle((0.5, 0.5), 0.3, fill=False)
axes.set_aspect(1)
axes.add_artist(draw_circle)
plt.title("Circle")
plt.show()
Wir können den obigen Code vereinfachen, indem wir mit Hilfe der Funktionen gcf()
und gca()
schnell einen Kreis in einen bestehenden Plot einfügen.
import matplotlib.pyplot as plt
figure, axes = plt.subplots()
draw_circle = plt.Circle((0.5, 0.5), 0.3, fill=False)
plt.gcf().gca().add_artist(draw_circle)
plt.title("Circle")
axes.set_aspect(1)
plt.show()
Kreisgleichung zur Darstellung eines Kreises in Matplotlib
Parametrische Kreisgleichung
Die parametrische Gleichung des Kreises lautet x=r*cos(theta)
und y=r*sin(theta)
.
import numpy as np
import matplotlib.pyplot as plt
theta = np.linspace(0, 2 * np.pi, 100)
radius = 0.3
a = radius * np.cos(theta)
b = radius * np.sin(theta)
figure, axes = plt.subplots(1)
axes.plot(a, b)
axes.set_aspect(1)
plt.title("Circle using Parametric Equation")
plt.show()
Zentrum-Radius-Form der Kreisgleichung
Wir können auch einen Kreis unter Verwendung der Zentrum-Radius-Form der Kreisgleichung zeichnen.
import numpy as np
import matplotlib.pyplot as plt
x = np.linspace(-0.5, 0.5, 100)
y = np.linspace(-0.5, 0.5, 100)
a, b = np.meshgrid(x, y)
C = a ** 2 + b ** 2 - 0.2
figure, axes = plt.subplots()
axes.contour(a, b, C, [0])
axes.set_aspect(1)
plt.show()
Streudiagramm von Punkten
Wir können auch einen Kreis in Matplotlib mit der scatter()
Methode zeichnen und den Radius mit dem s
Parameter anpassen. Die Fläche des Kreises ist pi/4*s
.
import matplotlib.pyplot as plt
plt.scatter(0, 0, s=4000)
plt.title("Circle")
plt.xlim(-0.75, 0.75)
plt.ylim(-0.75, 0.75)
plt.show()
Suraj Joshi is a backend software engineer at Matrice.ai.
LinkedIn