Heim >Backend-Entwicklung >Python-Tutorial >Wie zeichne ich Linien mit unterschiedlichen Farben in Matplotlib?

Wie zeichne ich Linien mit unterschiedlichen Farben in Matplotlib?

Patricia Arquette
Patricia ArquetteOriginal
2024-10-29 08:58:02908Durchsuche

How to Plot Lines with Varying Colors in Matplotlib?

Linien mit unterschiedlichen Farben zeichnen

In matplotlib kann das Zeichnen einer Linie mit unterschiedlichen Farbsegmenten durch verschiedene Ansätze erreicht werden. Die Auswahl hängt von der Anzahl der zu zeichnenden Liniensegmente ab.

Geringe Anzahl von Liniensegmenten

Wenn nur wenige Liniensegmente erforderlich sind, wie zum Beispiel beim Zeichnen einer Flugbahn, berücksichtigen Sie Folgendes:

<code class="python">import numpy as np
import matplotlib.pyplot as plt

# Generate random data
xy = (np.random.random((10, 2)) - 0.5).cumsum(axis=0)

fig, ax = plt.subplots()

# Plot each line segment with a unique color
for start, stop in zip(xy[:-1], xy[1:]):
    x, y = zip(start, stop)
    ax.plot(x, y, color=plt.cm.gist_ncar(np.random.random()))

plt.show()</code>

Große Anzahl von Liniensegmenten

Beim Umgang mit einer großen Anzahl von Liniensegmenten ist die Verwendung einer LineCollection eine effizientere Methode.

<code class="python">import numpy as np
import matplotlib.pyplot as plt
from matplotlib.collections import LineCollection

# Generate random data
xy = (np.random.random((1000, 2)) - 0.5).cumsum(axis=0)

# Reshape data for compatibility with LineCollection
xy = xy.reshape(-1, 1, 2)
segments = np.hstack([xy[:-1], xy[1:]])

fig, ax = plt.subplots()

# Create a LineCollection with randomly assigned colors
coll = LineCollection(segments, cmap=plt.cm.gist_ncar)
coll.set_array(np.random.random(xy.shape[0]))

# Add the LineCollection to the plot
ax.add_collection(coll)
ax.autoscale_view()

plt.show()</code>

Bei beiden Methoden Die ausgewählte Farbkarte kann mithilfe der Matplotlib-Dokumentation geändert werden.

Das obige ist der detaillierte Inhalt vonWie zeichne ich Linien mit unterschiedlichen Farben in Matplotlib?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn