HOWTO · Matplotlib
Wie man in Matplotlib einen Kreis zeichnet
Wir können in Matplotlib mit Patches Circle, Circle Equation und Scatter Plot einen Kreis zeichnen.
Auf dieser Seite
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()