Heim  >  Artikel  >  Backend-Entwicklung  >  Techniken zur Visualisierung von Zeitreihendaten in Python

Techniken zur Visualisierung von Zeitreihendaten in Python

王林
王林Original
2023-06-10 22:45:063227Durchsuche

Da die Datenmenge weiter wächst und sich verändert, wird die Analyse von Zeitreihendaten immer wichtiger. Als Open-Source-, flexible und benutzerfreundliche Programmiersprache wird Python auch häufig im Bereich der Zeitreihendatenanalyse eingesetzt. In diesem Artikel befassen wir uns mit Techniken zur Visualisierung von Zeitreihendaten in Python, um Ihnen dabei zu helfen, Zeitreihendaten besser zu verstehen und zu analysieren.

1. Einführung in die Matplotlib-Bibliothek

Matplotlib ist eine weit verbreitete Visualisierungsbibliothek in Python, die verschiedene Arten von Diagrammen unterstützt, wie z. B. Liniendiagramme, Balkendiagramme, Kreisdiagramme, Streudiagramme usw. Die Verwendung ist einfach und leicht zu verstehen und kann in das Standard-Python-Installationspaket aufgenommen werden. Im Folgenden stellen wir vor, wie Sie Matplotlib zum Zeichnen von Zeitreihendatendiagrammen verwenden.

2. Liniendiagramm

Liniendiagramme sind die gebräuchlichste Art, Zeitreihendatendiagramme darzustellen. Durch das Liniendiagramm können die Trends und Änderungen der Daten klar dargestellt und die Unterschiede zwischen den Daten zu verschiedenen Zeiten intuitiver ausgedrückt werden. Als nächstes erstellen wir zunächst einen Satz Testdaten:

import numpy as np

# 生成随机正弦函数
x = np.linspace(0, 10, 1000)
y = np.sin(x) + np.random.randn(len(x)) * 0.1

# 绘制折线图
import matplotlib.pyplot as plt

plt.plot(x, y)
plt.show()

Wie oben gezeigt, haben wir über die Linspace-Funktion eine arithmetische Folge x mit 1000 Zahlen generiert und darauf die Sinusfunktion plus einen Zufallsrauschterm berechnet. Auf diese Weise Es werden Beispieldaten y erhalten. Dann rufen wir die Plot-Funktion in Matplotlib auf, übergeben x und y und rufen die Show-Funktion auf, um das Liniendiagramm anzuzeigen.

3. Flächendiagramm

Flächendiagramm kann verwendet werden, um den sich ändernden Trend von Zeitreihendaten darzustellen und die Beziehung zwischen einem bestimmten Indikator und der Gesamtsumme anzuzeigen. In Matplotlib können Sie mit der Funktion fill_between ganz einfach Flächendiagramme erstellen. Als nächstes erstellen wir einen weiteren Satz Testdaten und zeichnen das Flächendiagramm:

# 生成随机的正态分布函数
x = np.linspace(0, 10, 1000)
y = np.random.randn(len(x)).cumsum()

# 绘制区域图
plt.fill_between(x, y, color='skyblue', alpha=0.2)
plt.plot(x, y, color='skyblue', alpha=0.6)
plt.show()

In diesem Beispiel verwenden wir zunächst die Cumsum-Funktion, um die zufällige Normalverteilungsfunktion zu integrieren, um die kumulative Summe zu erhalten, und verwenden dann die Funktion „fill_between“, um ein Blau zu zeichnen Gebietskarte mit angepasster Transparenz. Verwenden Sie die Plot-Funktion, um ein Liniendiagramm der kumulativen Summe zu zeichnen, und legen Sie die Farbe und Transparenz des Linientyps fest.

4. Heatmap

Heatmap kann verwendet werden, um Datenänderungen innerhalb eines bestimmten Zeitraums darzustellen, und der Änderungstrend der Daten wird durch Farbänderungen ausgedrückt. In Matplotlib müssen Sie nur die Funktion imshow aufrufen, um eine Heatmap zu erstellen. Nachfolgend verwenden wir den Datensatz „book_data“, um eine Heatmap zu zeichnen:

from matplotlib import cm

# 导入book_data数据集
from vega_datasets import data
book_data = data.books()

# 绘制热度图
fig, ax = plt.subplots(figsize=(12, 6))
im = ax.imshow(book_data.pivot(index='year', columns='category', values='books'),
               cmap=cm.Reds, interpolation='nearest')

# 设置图表元素
ax.set_xticks(np.arange(len(book_data['category'].unique())))
ax.set_yticks(np.arange(len(book_data['year'].unique())))
ax.set_xticklabels(book_data['category'].unique())
ax.set_yticklabels(book_data['year'].unique())
ax.set_title('书籍类别和年份图书数量热度图')

# 添加坐标轴的标签
ax.set_xlabel('书籍类别')
ax.set_ylabel('年份')

# 添加颜色条
cbar = ax.figure.colorbar(im, ax=ax)
cbar.ax.set_ylabel('图书数量', rotation=-90, va="bottom")

# 调整布局
plt.tight_layout()
plt.show()

Durch den Import des Datensatzes „book_data“ haben wir eine Datentabelle erhalten, die die Anzahl der Bücher verschiedener Kategorien in jedem Jahr enthält. Dann verwenden wir die Funktion imshow, um die Werte in der Datentabelle der roten Palette zuzuordnen und einige Diagrammelemente wie Achsenbeschriftungen, Titel, Farbbalken usw. hinzuzufügen. Durch Anpassen des Layouts können Sie das Diagramm schöner und verständlicher gestalten.

5. Zusammenfassung

In diesem Artikel werden die Hauptfunktionen der Matplotlib-Bibliothek und mehrere gängige Techniken zur Visualisierung von Zeitreihendaten vorgestellt: Liniendiagramme, Flächendiagramme und Wärmekarten. Diese Techniken können uns helfen, Zeitreihendaten besser zu verstehen und zu analysieren, um genauere und wertvollere Entscheidungen zu treffen. Gleichzeitig können Sie im tatsächlichen Gebrauch auch die Diagrammelemente anpassen, um das Diagramm schöner und verständlicher zu machen.

Das obige ist der detaillierte Inhalt vonTechniken zur Visualisierung von Zeitreihendaten in Python. 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