τα στοιχεία επικοινωνίας μου
Ταχυδρομείο[email protected]
2024-07-12
한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina
Η οπτικοποίηση δεδομένων είναι η εμφάνιση δεδομένων με τη μορφή γραφικών για να βοηθήσει τους ανθρώπους να κατανοήσουν τις πληροφορίες και τα μοτίβα πίσω από τα δεδομένα πιο διαισθητικά και γρήγορα. Στη σημερινή εποχή της έκρηξης της πληροφορίας, η οπτικοποίηση δεδομένων είναι ιδιαίτερα σημαντική για τους ακόλουθους λόγους:
bqplot βασίζεται σεΓραμματική των Γραφικών Βιβλιοθήκη 2D οπτικοποίησης, ειδικά γιαΣημειωματάριο Jupyter σχέδιο.συνδυάζειd3.js καιipywidgets χαρακτηριστικό που έχει σχεδιαστεί για να φέρει τις ισχυρές δυνατότητες οπτικοποίησης του d3.js στην Python. Ακολουθούν ορισμένα βασικά χαρακτηριστικά της βιβλιοθήκης bqplot:
Η εγκατάσταση του bqplot είναι πολύ απλή, απλώς εκτελέστε την ακόλουθη εντολή στο τερματικό ή στη γραμμή εντολών:
pip install bqplot
jupyter nbextension enable --py --sys-prefix bqplot
Μετά την επιτυχή εγκατάσταση, εισαγάγετε τις απαραίτητες βιβλιοθήκες στο Jupyter Notebook για να αρχίσετε να χρησιμοποιείτε:
import numpy as np
import bqplot.pyplot as plt
Ακολουθεί ένα απλό παράδειγμα που δείχνει πώς να δημιουργήσετε ένα ιστόγραμμα χρησιμοποιώντας bqplot:
# 生成随机数据
data = np.random.randn(100)
# 创建直方图
fig = plt.figure(title='Histogram by bqplot')
hist = plt.hist(sample=data, bins=10, colors=['#01a2d9'])
fig
Μέσα από αυτό το απλό παράδειγμα, μπορείτε να δείτε την ευκολία χρήσης και τις ισχυρές διαδραστικές λειτουργίες του bqplot. Στα επόμενα κεφάλαια, θα ασχοληθούμε με τους διάφορους τύπους γραφημάτων και τις προηγμένες δυνατότητες του bqplot.
Πριν αρχίσετε να χρησιμοποιείτε το bqplot για οπτικοποίηση δεδομένων, πρέπει πρώτα να εγκαταστήσετε τη βιβλιοθήκη bqplot στο περιβάλλον σας. Το bqplot μπορεί να εγκατασταθεί με διάφορους τρόπους, συνηθέστερα χρησιμοποιώντας pip ή conda. Ακολουθούν τα λεπτομερή βήματα για τη χρήση και των δύο μεθόδων:
pip install bqplot
conda install -c conda-forge bqplot
Αφού ολοκληρωθεί η εγκατάσταση, μπορείτε να επιβεβαιώσετε εάν η εγκατάσταση ήταν επιτυχής εκτελώντας την ακόλουθη εντολή:
import bqplot
print(bqplot.__version__)
Μετά την εγκατάσταση του bqplot, θα πρέπει στη συνέχεια να εισαγάγετε τις απαραίτητες βιβλιοθήκες για να ξεκινήσετε την εργασία οπτικοποίησης δεδομένων. Συνήθως, πρέπει να εισαγάγετε τις ακόλουθες βιβλιοθήκες:
bqplot
: Χρησιμοποιείται για τη δημιουργία διαδραστικών γραφημάτων.numpy
: Χρησιμοποιείται για αριθμητικούς υπολογισμούς και επεξεργασία δεδομένων.pandas
: Χρησιμοποιείται για χειρισμό και ανάλυση δεδομένων.Ακολουθεί δείγμα κώδικα για την εισαγωγή αυτών των βιβλιοθηκών:
import bqplot.pyplot as plt
import numpy as np
import pandas as pd
Για να βεβαιωθείτε ότι όλα έχουν ρυθμιστεί σωστά, μπορείτε να δοκιμάσετε να δημιουργήσετε ένα απλό γράφημα ράβδων. Ακολουθεί ένα δείγμα κώδικα που δείχνει πώς να εισάγετε τις απαραίτητες βιβλιοθήκες και να δημιουργήσετε ένα απλό γράφημα ράβδων:
# 导入必要的库
import bqplot.pyplot as plt
import numpy as np
# 创建一个简单的条形图
fig = plt.figure(title="简单条形图示例")
x = list("ABCDE")
y = np.random.rand(5)
bar = plt.bar(x, y)
fig
Σε αυτό το παράδειγμα, πρώτα εισάγουμεbqplot.pyplot
όπως καιplt
, στη συνέχεια χρησιμοποιήστεnumpy
Δημιουργήστε τυχαία δεδομένα. Στη συνέχεια, δημιουργήσαμε ένα απλό γράφημα ράβδων με πέντε ράβδους και το εμφανίσαμε σε ένα σημειωματάριο Jupyter.
Μέσα από τα παραπάνω βήματα, εγκαταστήσατε και εισαγάγατε με επιτυχία τη βιβλιοθήκη bqplot και δημιουργήσατε το πρώτο σας απλό διαδραστικό γράφημα. Στη συνέχεια, μπορείτε να συνεχίσετε την εξερεύνηση πιο προηγμένων λειτουργιών και τύπων γραφημάτων.
Πριν ξεκινήσετε τη χρήση bqplot
Για να μπορέσετε να πραγματοποιήσετε οπτικοποίηση δεδομένων, πρέπει πρώτα να εισαγάγετε το απαιτούμενο σύνολο δεδομένων.Ακολουθούν ορισμένες κοινές μέθοδοι εισαγωγής δεδομένων και πώς να τις χρησιμοποιήσετεpandas
βιβλιοθήκη για την επεξεργασία αυτών των δεδομένων.
pandas
Είναι μια ισχυρή βιβλιοθήκη επεξεργασίας δεδομένων που χρησιμοποιείται ευρέως για ανάλυση και προεπεξεργασία δεδομένων.Δείτε πώς να το χρησιμοποιήσετεpandas
Παράδειγμα εισαγωγής αρχείου CSV:
import pandas as pd
# 导入CSV文件
df1 = pd.read_csv("../input/autompg-dataset/auto-mpg.csv")
Εκτός από τα αρχεία CSV,pandas
Υποστηρίζει επίσης την εισαγωγή δεδομένων σε πολλές μορφές, όπως αρχεία Excel, αρχεία JSON κ.λπ. Να μερικά παραδείγματα:
# 导入Excel文件
df_excel = pd.read_excel("../input/dataset.xlsx")
# 导入JSON文件
df_json = pd.read_json("../input/dataset.json")
Εάν τα δεδομένα είναι αποθηκευμένα σε μια βάση δεδομένων, μπορείτε να χρησιμοποιήσετε pandas
τουread_sql
λειτουργία εισαγωγής δεδομένων. Εδώ είναι ένα παράδειγμα:
import sqlite3
# 连接到SQLite数据库
conn = sqlite3.connect('../input/database.db')
# 从数据库中读取数据
df_sql = pd.read_sql('SELECT * FROM table_name', conn)
Μετά την εισαγωγή ενός συνόλου δεδομένων, συνήθως χρειάζεται να κάνετε προεπισκόπηση του συνόλου δεδομένων για να κατανοήσετε τη δομή και το περιεχόμενο των δεδομένων.pandas
Παρέχονται διάφορες μέθοδοι για την προεπισκόπηση του συνόλου δεδομένων.
χρήση head()
Μέθοδος για την προβολή των πρώτων σειρών του συνόλου δεδομένων:
# 查看前5行数据
print(df1.head())
χρήση info()
Η μέθοδος μπορεί να προβάλει τις βασικές πληροφορίες του συνόλου δεδομένων, συμπεριλαμβανομένων των τύπων δεδομένων και των τιμών που λείπουν:
# 查看数据集的基本信息
print(df1.info())
χρήση describe()
Η μέθοδος μπορεί να προβάλει τις στατιστικές πληροφορίες του συνόλου δεδομένων, συμπεριλαμβανομένου του μέσου όρου, της τυπικής απόκλισης, της ελάχιστης τιμής, της μέγιστης τιμής κ.λπ.:
# 查看数据集的统计信息
print(df1.describe())
χρήση columns
Οι ιδιότητες μπορούν να προβάλουν τα ονόματα στηλών του συνόλου δεδομένων:
# 查看数据集的列名
print(df1.columns)
Μέσω των παραπάνω μεθόδων, μπορείτε να έχετε μια βασική κατανόηση του εισαγόμενου συνόλου δεδομένων, θέτοντας έτσι τα θεμέλια για επακόλουθη εργασία οπτικοποίησης δεδομένων.
{
"title": "bqplot教程:在Jupyter Notebook中进行交互式数据可视化",
"summary": "本文详细介绍了如何使用bqplot库在Jupyter Notebook中进行交互式数据可视化。bqplot是一个基于Grammar of Graphics的2D可视化解决方案,结合了d3.js和ipywidgets的功能,旨在将d3.js的功能带到Python中。",
"content_outline": [
{
"h1": "基本图表类型",
"h2": [
"4.1 散点图",
"4.2 饼图",
"4.3 箱线图",
"4.4 条形图",
"4.5 堆积条形图"
]
}
]
}
Το Scatter Plot είναι ένα γράφημα που χρησιμοποιείται για να δείξει τη σχέση μεταξύ δύο μεταβλητών. Τα διαγράμματα διασποράς σας επιτρέπουν να παρατηρήσετε οπτικά την κατανομή και τη συσχέτιση των δεδομένων. Στο bqplot, η δημιουργία γραφικών scatter είναι πολύ απλή.
import bqplot as bq
import numpy as np
# 创建数据
x = np.random.rand(100)
y = np.random.rand(100)
# 创建尺度
x_sc = bq.LinearScale()
y_sc = bq.LinearScale()
# 创建散点标记
scatter = bq.Scatter(x=x, y=y, scales={'x': x_sc, 'y': y_sc})
# 创建轴
ax_x = bq.Axis(scale=x_sc, label='X Axis')
ax_y = bq.Axis(scale=y_sc, orientation='vertical', label='Y Axis')
# 创建图表
fig = bq.Figure(marks=[scatter], axes=[ax_x, ax_y], title='Scatter Plot')
# 显示图表
fig
Το γράφημα πίτας είναι ένα γράφημα που χρησιμοποιείται για την εμφάνιση της αναλογίας των δεδομένων. Στο bqplot, η δημιουργία γραφημάτων πίτας είναι εξίσου εύκολη.
import bqplot as bq
# 创建数据
data = [10, 20, 30, 40]
labels = ['A', 'B', 'C', 'D']
# 创建饼图标记
pie = bq.Pie(sizes=data, labels=labels)
# 创建图表
fig = bq.Figure(marks=[pie], title='Pie Chart')
# 显示图表
fig
Ένα διάγραμμα πλαισίου είναι ένα γράφημα που χρησιμοποιείται για την εμφάνιση της κατανομής των δεδομένων. Μπορεί να εμφανίζει τη διάμεσο, τα τεταρτημόρια και τα ακραία στοιχεία των δεδομένων.
import bqplot as bq
import numpy as np
# 创建数据
data = [np.random.normal(0, 1, 100), np.random.normal(3, 1, 100), np.random.normal(6, 1, 100)]
# 创建尺度
x_sc = bq.OrdinalScale()
y_sc = bq.LinearScale()
# 创建箱线图标记
boxplot = bq.Boxplot(x=data, scales={'x': x_sc, 'y': y_sc})
# 创建轴
ax_x = bq.Axis(scale=x_sc, label='Groups')
ax_y = bq.Axis(scale=y_sc, orientation='vertical', label='Values')
# 创建图表
fig = bq.Figure(marks=[boxplot], axes=[ax_x, ax_y], title='Box Plot')
# 显示图表
fig
Ένα γράφημα ράβδων είναι ένα γράφημα που χρησιμοποιείται για την εμφάνιση συγκρίσεων μεταξύ κατηγορικών δεδομένων. Το ύψος κάθε ράβδου αντιπροσωπεύει την τιμή δεδομένων για αυτήν την κατηγορία.
import bqplot as bq
# 创建数据
x_labels = ['A', 'B', 'C', 'D']
y_values = [30, 20, 40, 10]
# 创建尺度
x_sc = bq.OrdinalScale()
y_sc = bq.LinearScale()
# 创建条形图标记
bar = bq.Bars(x=x_labels, y=y_values, scales={'x': x_sc, 'y': y_sc})
# 创建轴
ax_x = bq.Axis(scale=x_sc, label='Categories')
ax_y = bq.Axis(scale=y_sc, orientation='vertical', label='Values')
# 创建图表
fig = bq.Figure(marks=[bar], axes=[ax_x, ax_y], title='Bar Chart')
# 显示图表
fig
Ένα γράφημα στοιβαγμένων ράβδων είναι ένα γράφημα που χρησιμοποιείται για την εμφάνιση συγκρίσεων μεταξύ πολλών κατηγορικών δεδομένων. Το ύψος κάθε ράβδου αντιπροσωπεύει την τιμή δεδομένων για αυτήν την κατηγορία και κάθε γραμμή μπορεί να χωριστεί σε τμήματα, με κάθε τμήμα να αντιπροσωπεύει μια υποκατηγορία.
import bqplot as bq
# 创建数据
x_labels = ['A', 'B', 'C', 'D']
y_values = [
[30, 20],
[20, 30],
[40, 10],
[10, 40]
]
# 创建尺度
x_sc = bq.OrdinalScale()
y_sc = bq.LinearScale()
# 创建堆积条形图标记
stacked_bar = bq.Bars(x=x_labels, y=y_values, scales={'x': x_sc, 'y': y_sc}, type='stacked')
# 创建轴
ax_x = bq.Axis(scale=x_sc, label='Categories')
ax_y = bq.Axis(scale=y_sc, orientation='vertical', label='Values')
# 创建图表
fig = bq.Figure(marks=[stacked_bar], axes=[ax_x, ax_y], title='Stacked Bar Chart')
# 显示图表
fig
Το ιστόγραμμα είναι ένας τύπος γραφήματος που χρησιμοποιείται για να δείξει την κατανομή των δεδομένων.υπάρχειbqplot
μπορεί να χρησιμοποιηθείplt.hist
λειτουργία για τη δημιουργία ιστογράμματος. Εδώ είναι ένα απλό παράδειγμα:
import numpy as np
import bqplot.pyplot as plt
# 生成随机数据
data = np.random.randn(1000)
# 创建直方图
fig = plt.figure()
hist = plt.hist(data, bins=30)
plt.title('Histogram of Random Data')
plt.xlabel('Value')
plt.ylabel('Frequency')
fig
Σε αυτό το παράδειγμα, δημιουργήσαμε πρώτα 1000 τυχαία σημεία δεδομένων και στη συνέχεια χρησιμοποιήσαμεplt.hist
Η συνάρτηση δημιουργεί ένα ιστόγραμμα με 30 bins. Μπορείτε να κάνετε το γράφημά σας πιο ξεκάθαρο και πιο κατανοητό ορίζοντας τίτλους και ετικέτες αξόνων.
Τα γραμμικά γραφήματα είναι ένας κοινός τύπος γραφήματος που χρησιμοποιείται για την εμφάνιση τάσεων στα δεδομένα με την πάροδο του χρόνου ή άλλες συνεχείς μεταβλητές.υπάρχειbqplot
μπορεί να χρησιμοποιηθείplt.plot
λειτουργία για τη δημιουργία γραμμικού γραφήματος. Εδώ είναι ένα παράδειγμα:
import numpy as np
import bqplot.pyplot as plt
# 生成数据
x = np.linspace(0, 10, 100)
y = np.sin(x)
# 创建折线图
fig = plt.figure()
line = plt.plot(x, y)
plt.title('Line Chart of Sine Function')
plt.xlabel('X-axis')
plt.ylabel('Y-axis')
fig
Σε αυτό το παράδειγμα, δημιουργήσαμε δεδομένα συνάρτησης ημιτονοειδούς με 100 σημεία δεδομένων και στη συνέχεια χρησιμοποιήσαμεplt.plot
Η συνάρτηση δημιουργεί ένα γραμμικό γράφημα. Μπορείτε να κάνετε το γράφημά σας πιο ξεκάθαρο και πιο κατανοητό ορίζοντας τίτλους και ετικέτες αξόνων.
Τα γραφήματα κηροπήγιο (επίσης γνωστά ως γραφήματα κηροπήγιο) είναι ένας τύπος γραφήματος που χρησιμοποιείται για την εμφάνιση οικονομικών δεδομένων, όπως οι τιμές των μετοχών.υπάρχειbqplot
μπορεί να χρησιμοποιηθείplt.candle
λειτουργία για τη δημιουργία γραφημάτων κηροπήγιο. Εδώ είναι ένα παράδειγμα:
import numpy as np
import bqplot.pyplot as plt
# 生成随机金融数据
n = 100
open_prices = np.random.randn(n)
high_prices = open_prices + np.random.rand(n)
low_prices = open_prices - np.random.rand(n)
close_prices = open_prices + np.random.randn(n) * 0.5
# 创建蜡烛图
fig = plt.figure()
candle = plt.candle(open_prices, high_prices, low_prices, close_prices)
plt.title('Candlestick Chart of Random Financial Data')
plt.xlabel('Time')
plt.ylabel('Price')
fig
Σε αυτό το παράδειγμα, δημιουργούμε τυχαία δεδομένα τιμής ανοίγματος, υψηλού, χαμηλού και κλεισίματος και στη συνέχεια χρησιμοποιούμεplt.candle
Η συνάρτηση δημιουργεί ένα γράφημα κηροπήγιο. Μπορείτε να κάνετε το γράφημά σας πιο ξεκάθαρο και πιο κατανοητό ορίζοντας τίτλους και ετικέτες αξόνων.
Ο χάρτης θερμότητας είναι ένας τύπος γραφήματος που χρησιμοποιείται για την εμφάνιση της κατανομής πυκνότητας ή έντασης δισδιάστατων δεδομένων.υπάρχειbqplot
μπορεί να χρησιμοποιηθείplt.heatmap
λειτουργία για τη δημιουργία χάρτη θερμότητας. Εδώ είναι ένα παράδειγμα:
import numpy as np
import bqplot.pyplot as plt
# 生成随机数据
data = np.random.rand(10, 10)
# 创建热力图
fig = plt.figure()
heatmap = plt.heatmap(data)
plt.title('Heatmap of Random Data')
plt.xlabel('X-axis')
plt.ylabel('Y-axis')
fig
Σε αυτό το παράδειγμα, δημιουργήσαμε έναν πίνακα 10x10 τυχαίων δεδομένων και στη συνέχεια χρησιμοποιήσαμεplt.heatmap
Η λειτουργία δημιουργεί έναν χάρτη θερμότητας. Μπορείτε να κάνετε το γράφημά σας πιο ξεκάθαρο και πιο κατανοητό ορίζοντας τίτλους και ετικέτες αξόνων.
Ένα γεωγραφικό γράφημα είναι ένας τύπος γραφήματος που χρησιμοποιείται για την εμφάνιση γεωγραφικών δεδομένων, όπως ένας χάρτης.υπάρχειbqplot
μπορεί να χρησιμοποιηθείplt.geo
λειτουργία για τη δημιουργία γεωγραφικών χαρτών. Εδώ είναι ένα παράδειγμα:
import bqplot.pyplot as plt
# 加载地理数据
map_data = 'World'
# 创建地理图
fig = plt.figure()
geo = plt.geo(map_data)
plt.title('Geographical Map')
fig
Σε αυτό το παράδειγμα, φορτώνουμε τα δεδομένα του παγκόσμιου χάρτη και στη συνέχεια χρησιμοποιούμεplt.geo
Η συνάρτηση δημιουργεί έναν γεωγραφικό χάρτη. Ορίζοντας έναν τίτλο, μπορείτε να κάνετε το γράφημά σας πιο ξεκάθαρο και πιο κατανοητό.
Στην οπτικοποίηση δεδομένων, οι διαδραστικές λειτουργίες είναι το κλειδί για τη βελτίωση της εμπειρίας του χρήστη και των δυνατοτήτων εξερεύνησης δεδομένων.bqplot
Παρέχει πλούσια διαδραστικά στοιχεία που επιτρέπουν στους χρήστες να διεξάγουν δυναμική και αποκριτική εξερεύνηση δεδομένων στο Jupyter Notebook. Αυτά τα διαδραστικά στοιχεία περιλαμβάνουν, αλλά δεν περιορίζονται σε αυτά:
Αυτά τα διαδραστικά στοιχεία είναι bqplot
τουInteractions
Η υλοποίηση της μονάδας παρέχει στους χρήστες διαισθητικά και ισχυρά εργαλεία εξερεύνησης δεδομένων.
Το ζουμ και η μετατόπιση είναι οι πιο βασικές διαδραστικές λειτουργίες στην οπτικοποίηση δεδομένων.bqplot
Παρέχει ενσωματωμένες λειτουργίες ζουμ και μετατόπισης, οι χρήστες μπορούν να μεγεθύνουν μέσω του τροχού του ποντικιού και να μετακινήσουν μέσω της μεταφοράς του ποντικιού. Εδώ είναι ένα απλό παράδειγμα:
import bqplot.pyplot as plt
import numpy as np
# 创建数据
x = np.linspace(-10, 10, 100)
y = np.sin(x)
# 创建图表
fig = plt.figure(title="Zoom and Pan Example")
plt.plot(x, y)
plt.show()
Σε αυτό το παράδειγμα, ο χρήστης μπορεί να μεγεθύνει ή να σμικρύνει το γράφημα χρησιμοποιώντας τον τροχό του ποντικιού και να μετακινήσει το γράφημα σύροντας το ποντίκι.
Οι δυνατότητες επιλογής επιλογής και βούρτσας επιτρέπουν στους χρήστες να επιλέξουν συγκεκριμένα σημεία δεδομένων ή περιοχές μέσα σε ένα γράφημα για περαιτέρω ανάλυση.bqplot
υπό την προϋπόθεσηBrushSelector
καιLassoSelector
στοιχεία για την υλοποίηση αυτής της λειτουργικότητας.Το παρακάτω είναι μια χρήσηBrushSelector
Παράδειγμα:
from bqplot import BrushSelector
# 创建选择器
brush = BrushSelector(x_scale=x_scale, y_scale=y_scale)
# 将选择器添加到图表
fig.interaction = brush
Σε αυτό το παράδειγμα, ο χρήστης μπορεί να επιλέξει μια ορθογώνια περιοχή στο γράφημα σύροντας το ποντίκι και τα επιλεγμένα σημεία δεδομένων θα επισημανθούν.
Οι συμβουλές εργαλείων μπορούν να εμφανίζουν λεπτομερείς πληροφορίες όταν ο χρήστης τοποθετεί το ποντίκι πάνω από ένα σημείο δεδομένων.bqplot
υπό την προϋπόθεσηTooltip
στοιχείο για την επίτευξη αυτής της λειτουργικότητας. Εδώ είναι ένα απλό παράδειγμα:
from bqplot import Tooltip
# 创建工具提示
tooltip = Tooltip(fields=['x', 'y'], formats=['.2f', '.2f'])
# 将工具提示添加到图表
scatter.tooltip = tooltip
Σε αυτό το παράδειγμα, όταν ο χρήστης τοποθετεί τον δείκτη του ποντικιού πάνω από ένα σημείο δεδομένων γραφικής παράστασης διασποράς, το x
καιy
αξία.
Η δυνατότητα δυναμικής ενημέρωσης επιτρέπει στα γραφήματα να ενημερώνονται δυναμικά με βάση τις εισαγωγές χρήστη ή τις αλλαγές δεδομένων.bqplot
υπό την προϋπόθεσηinteracts
μονάδα για την υλοποίηση αυτής της λειτουργικότητας. Εδώ είναι ένα απλό παράδειγμα:
from ipywidgets import IntSlider
# 创建滑块
slider = IntSlider(value=50, min=0, max=100, step=1)
# 定义更新函数
def update_plot(change):
new_value = change['new']
scatter.x = np.linspace(0, new_value, 100)
# 绑定滑块到更新函数
slider.observe(update_plot, names='value')
# 显示滑块和图表
slider
fig
Σε αυτό το παράδειγμα, ο χρήστης μπορεί να ενημερώσει δυναμικά τα δεδομένα στο γράφημα προσαρμόζοντας την τιμή του ρυθμιστικού.
Οι διαδραστικοί πίνακες εργαλείων είναι μια σημαντική εφαρμογή στην οπτικοποίηση δεδομένων, η οποία επιτρέπει στους χρήστες να εξερευνούν δυναμικά δεδομένα μέσω διαδραστικών στοιχείων για να αποκτήσουν μια βαθύτερη κατανόηση των πληροφοριών πίσω από τα δεδομένα. Το bqplot παρέχει ισχυρές δυνατότητες για τη δημιουργία διαδραστικών πινάκων εργαλείων Εδώ είναι ένα απλό παράδειγμα που δείχνει πώς να δημιουργήσετε έναν πίνακα εργαλείων που περιέχει πολλαπλά γραφήματα και διαδραστικά στοιχεία.
Εισαγάγετε τις απαραίτητες βιβλιοθήκες:
import bqplot as bq
import ipywidgets as widgets
from bqplot import pyplot as plt
import numpy as np
Προετοιμάστε δεδομένα:
x = np.arange(100)
y = np.random.randn(100).cumsum()
Δημιουργήστε ένα στοιχείο γραφήματος:
line_chart = plt.plot(x, y, 'Line Chart')
bar_chart = plt.bar(x, y, 'Bar Chart')
Δημιουργήστε διαδραστικά στοιχεία:
dropdown = widgets.Dropdown(
options=['Line Chart', 'Bar Chart'],
value='Line Chart',
description='Chart Type:'
)
Ορίστε τη λογική αλληλεπίδρασης:
def on_change(change):
if change['new'] == 'Line Chart':
plt.clear()
plt.plot(x, y, 'Line Chart')
elif change['new'] == 'Bar Chart':
plt.clear()
plt.bar(x, y, 'Bar Chart')
dropdown.observe(on_change, names='value')
Σύνθετα εξαρτήματα:
dashboard = widgets.VBox([dropdown, plt.figure])
display(dashboard)
Μέσα από τα παραπάνω βήματα, μπορούμε να δημιουργήσουμε έναν απλό διαδραστικό πίνακα εργαλείων όπου οι χρήστες μπορούν να επιλέξουν διαφορετικούς τύπους γραφημάτων μέσω του αναπτυσσόμενου μενού για να επιτύχουν δυναμική οπτικοποίηση δεδομένων.
Οι επιλογείς δεδομένων είναι σημαντικά στοιχεία στο bqplot για φιλτράρισμα και αλληλεπίδραση δεδομένων. Μέσω του επιλογέα δεδομένων, οι χρήστες μπορούν να επιλέξουν και να χειριστούν δεδομένα απευθείας στο γράφημα για να επιτύχουν πιο εκλεπτυσμένη ανάλυση δεδομένων.
Εισαγάγετε τις απαραίτητες βιβλιοθήκες:
import bqplot as bq
import ipywidgets as widgets
from bqplot import pyplot as plt
import numpy as np
Προετοιμάστε δεδομένα:
x = np.arange(100)
y = np.random.randn(100).cumsum()
Δημιουργία γραφήματος:
scatter_chart = plt.scatter(x, y, 'Scatter Chart')
Δημιουργία επιλογέα δεδομένων:
selector = bq.interacts.BrushSelector(x_scale=scatter_chart.scales['x'], y_scale=scatter_chart.scales['y'])
scatter_chart.interaction = selector
Ορίστε τη λογική επιλογής:
def on_selection(change):
selected_data = scatter_chart.selected
print(f"Selected Data: {selected_data}")
selector.observe(on_selection, names='selected')
Εμφάνιση γραφήματος:
display(plt.figure)
Μέσα από τα παραπάνω βήματα, μπορούμε να δημιουργήσουμε έναν επιλογέα δεδομένων στο διάγραμμα διασποράς. Ο χρήστης μπορεί να επιλέξει σημεία δεδομένων σύροντας το ποντίκι και να εξάγει τα επιλεγμένα δεδομένα στην κονσόλα.
Το bqplot όχι μόνο υποστηρίζει βασικά 2D γραφήματα, αλλά παρέχει επίσης ισχυρές λειτουργίες γεωγραφικών γραφημάτων που μπορούν να χρησιμοποιηθούν για τη δημιουργία διαφόρων προβολών χαρτών και προηγμένων γεωγραφικών γραφημάτων.
Εισαγάγετε τις απαραίτητες βιβλιοθήκες:
import bqplot as bq
import ipywidgets as widgets
from bqplot import pyplot as plt
import numpy as np
Προετοιμάστε γεωγραφικά δεδομένα:
import json
with open('world.json') as f:
world_data = json.load(f)
Δημιουργήστε έναν γεωγραφικό χάρτη:
map_chart = bq.Map(
map_data=bq.topo_load('world.json'),
scales={'projection': bq.AlbersUSA()}
)
Δημιουργήστε διαδραστικά στοιχεία:
dropdown = widgets.Dropdown(
options=['AlbersUSA', 'Mercator', 'Orthographic'],
value='AlbersUSA',
description='Projection:'
)
Ορίστε τη λογική αλληλεπίδρασης:
def on_change(change):
if change['new'] == 'AlbersUSA':
map_chart.scales['projection'] = bq.AlbersUSA()
elif change['new'] == 'Mercator':
map_chart.scales['projection'] = bq.Mercator()
elif change['new'] == 'Orthographic':
map_chart.scales['projection'] = bq.Orthographic()
dropdown.observe(on_change, names='value')
Σύνθετα εξαρτήματα:
map_dashboard = widgets.VBox([dropdown, map_chart])
display(map_dashboard)
Μέσα από τα παραπάνω βήματα, μπορούμε να δημιουργήσουμε έναν γεωγραφικό χάρτη που υποστηρίζει πολλαπλές προβολές χαρτών Οι χρήστες μπορούν να επιλέξουν διαφορετικές μεθόδους προβολής μέσω του αναπτυσσόμενου μενού για να επιτύχουν δυναμική εμφάνιση χάρτη.
Μέσω αυτών των προηγμένων λειτουργιών και εφαρμογών, το bqplot παρέχει στους χρήστες ισχυρά εργαλεία οπτικοποίησης δεδομένων, κάνοντας τη διαδραστική ανάλυση δεδομένων στο Jupyter Notebook πιο βολική και αποτελεσματική.
bqplot
παρέχει κάτι σανmatplotlib
τουpyplot
Το API επιτρέπει στους χρήστες να δημιουργούν και να εμφανίζουν γρήγορα γραφήματα.Τα παρακάτω είναι μερικά που χρησιμοποιούνται συνήθωςpyplot
Λειτουργίες και παραδείγματα:
figure()
: Δημιουργήστε ένα νέο γραφικό.plot()
: Σχεδιάστε ένα γραμμικό γράφημα.scatter()
: Σχεδιάστε ένα διάγραμμα διασποράς.bar()
: Σχεδιάστε ένα ραβδόγραμμα.pie()
: Σχεδιάστε ένα διάγραμμα πίτας.hist()
: Σχεδιάστε ένα ιστόγραμμα.Δείγμα κώδικα:
from bqplot import pyplot as plt
import numpy as np
# 创建数据
x = np.arange(10)
y = x ** 2
# 创建图形
fig = plt.figure()
# 绘制折线图
plt.plot(x, y)
# 显示图形
plt.show()
bqplot
Το μοντέλο αντικειμένου βασίζεται στη Γραμματική των Γραφικών, παρέχοντας έναν πιο ευέλικτο και λεπτομερή τρόπο προσαρμογής γραφημάτων. Ακολουθούν ορισμένα βασικά αντικείμενα και παραδείγματα:
Figure
: Δοχείο για το γράφημα, που περιέχει όλους τους δείκτες και τους άξονες.Mark
: Συγκεκριμένα γραφικά στοιχεία, όπως γραμμές, σημεία, γραμμές κ.λπ.Axis
: Άξονας.Scale
: Αντιστοίχιση δεδομένων σε γράφημα.Δείγμα κώδικα:
from bqplot import Figure, Axis, Scale, Lines
import numpy as np
# 创建数据
x = np.arange(10)
y = x ** 2
# 创建比例尺
x_scale = Scale(min=0, max=10)
y_scale = Scale(min=0, max=100)
# 创建轴
x_axis = Axis(scale=x_scale, label='X Axis')
y_axis = Axis(scale=y_scale, label='Y Axis', orientation='vertical')
# 创建标记
line = Lines(x=x, y=y, scales={'x': x_scale, 'y': y_scale})
# 创建图形
fig = Figure(marks=[line], axes=[x_axis, y_axis])
# 显示图形
fig
bqplot
Παρέχει πλούσιες συμβουλές εργαλείων και λειτουργίες γραμμής εργαλείων, επιτρέποντας στους χρήστες να αλληλεπιδρούν με γραφικά πιο άνετα.
Tooltip
: Εμφάνιση πληροφοριών δεδομένων όταν τοποθετείται το ποντίκι.Toolbar
: Παρέχει διαδραστικές λειτουργίες όπως ζουμ και μετατόπιση.Δείγμα κώδικα:
from bqplot import Tooltip, Toolbar
# 创建工具提示
tooltip = Tooltip(fields=['x', 'y'], formats=['.2f', '.2f'])
# 创建工具栏
toolbar = Toolbar(figure=fig)
# 添加到图形
line.tooltip = tooltip
fig.toolbar = toolbar
# 显示图形
fig
bqplot
Υποστηρίζει πολύπλοκες διαδραστικές λειτουργίες όπως επιλογή, ζουμ, μετατόπιση κ.λπ. επίσης,bqplot
Μπορεί επίσης να χρησιμοποιηθεί για τη δημιουργία προηγμένων απεικονίσεων, όπως χάρτες αγοράς.
Δείγμα κώδικα:
from bqplot import MarketMap
import pandas as pd
# 创建数据
data = pd.DataFrame({
'label': ['A', 'B', 'C', 'D'],
'values': [100, 200, 150, 300],
'color': ['red', 'green', 'blue', 'yellow']
})
# 创建市场地图
market_map = MarketMap(names=data['label'], values=data['values'], colors=data['color'])
# 创建图形
fig = Figure(marks=[market_map])
# 显示图形
fig
Μέσω της εισαγωγής των παραπάνω εγγράφων API, οι χρήστες μπορούν να κατανοήσουν και να χρησιμοποιήσουν καλύτερα bqplot
βιβλιοθήκη για να δημιουργήσετε πλούσιες, διαδραστικές απεικονίσεις δεδομένων.
Υπάρχουν ορισμένες προκλήσεις που μπορεί να αντιμετωπίσετε κατά τη μετεγκατάσταση υπαρχόντων έργων από άλλες βιβλιοθήκες οπτικοποίησης δεδομένων όπως το Matplotlib ή το Plotly στο bqplot. Ακολουθούν ορισμένα βασικά βήματα και σκέψεις που θα σας βοηθήσουν να πλοηγηθείτε στη διαδικασία μετεγκατάστασης.
Πριν ξεκινήσετε τη μετεγκατάσταση, πρέπει πρώτα να κατανοήσετε τις βασικές έννοιες του bqplot, όπως:
Βεβαιωθείτε ότι τα δεδομένα σας είναι έτοιμα και μπορούν εύκολα να μετατραπούν στη μορφή που απαιτείται από το bqplot. Συνήθως, τα δεδομένα μπορούν να αποθηκευτούν σε ένα Pandas DataFrame, το οποίο επιτρέπει τον εύκολο χειρισμό και οπτικοποίηση δεδομένων.
Εισαγάγετε τις απαραίτητες βιβλιοθήκες:
import bqplot as bq
import pandas as pd
import numpy as np
Δημιουργήστε κλίμακες και άξονες:
x_sc = bq.LinearScale()
y_sc = bq.LinearScale()
ax_x = bq.Axis(scale=x_sc, label='X Axis')
ax_y = bq.Axis(scale=y_sc, label='Y Axis', orientation='vertical')
Δημιουργία ετικέτας:
data = pd.DataFrame(np.random.randn(100, 2), columns=['X', 'Y'])
scatter = bq.Scatter(x=data['X'], y=data['Y'], scales={'x': x_sc, 'y': y_sc})
Δημιουργία γραφήματος:
fig = bq.Figure(axes=[ax_x, ax_y], marks=[scatter])
Εμφάνιση γραφήματος:
display(fig)
Το bqplot παρέχει πλούσιες διαδραστικές λειτουργίες, οι οποίες μπορούν να επιτευχθούν ορίζοντας διαφορετικές ιδιότητες. Για παράδειγμα, για να ενεργοποιήσετε τη λειτουργία ζουμ και μετατόπισης:
scatter.enable_move = True
scatter.enable_zoom = True
Το bqplot σάς επιτρέπει να προσαρμόσετε το στυλ του γραφήματος σας, συμπεριλαμβανομένου του χρώματος, του στυλ δείκτη, του στυλ γραμμής κ.λπ. Για παράδειγμα, για να προσαρμόσετε την εμφάνιση ενός σχεδίου διασποράς:
scatter = bq.Scatter(x=data['X'], y=data['Y'], scales={'x': x_sc, 'y': y_sc}, colors=['blue'], default_size=20, marker='triangle-up', stroke='black')
Το bqplot είναι ένα έργο ανοιχτού κώδικα και τα μέλη της κοινότητας είναι ευπρόσδεκτα να συνεισφέρουν κώδικα, τεκμηρίωση και παραδείγματα. Ακολουθούν ορισμένες οδηγίες συνεισφοράς που θα σας βοηθήσουν να ξεκινήσετε να συνεισφέρετε στο έργο bqplot.
Αποθετήριο κλώνων:
git clone https://github.com/bqplot/bqplot.git
cd bqplot
Εγκαταστήστε εξαρτήσεις:
pip install -r requirements.txt
Εγκαταστήστε την έκδοση ανάπτυξης:
pip install -e .
Όταν συνεισφέρετε κώδικα, ακολουθήστε αυτές τις οδηγίες:
Δημιουργήστε ένα υποκατάστημα:
git checkout -b my-new-feature
Δεσμεύστε αλλαγές:
git add .
git commit -m "Add some feature"
κλαδί ώθησης:
git push origin my-new-feature
Δημιουργία Αίτησης Τραβήγματος:
Δημιουργήστε ένα νέο αίτημα έλξης στο GitHub που περιγράφει τις αλλαγές και τα κίνητρά σας.
Ακολουθώντας αυτές τις οδηγίες, μπορείτε να κάνετε μια πολύτιμη συνεισφορά στο έργο bqplot και να βοηθήσετε στην προώθηση της διαδραστικής οπτικοποίησης δεδομένων στην κοινότητα Python.
bqplot βασίζεται σεΓραμματική των Γραφικών Σύστημα απεικόνισης 2D, σχεδιασμένο γιαΣημειωματάριο Jupyter σχέδιο. Έχει τα ακόλουθα σημαντικά πλεονεκτήματα:
Αν και το bqplot παρέχει ισχυρή λειτουργικότητα και ευελιξία, έχει επίσης ορισμένους περιορισμούς:
Ως ενεργό έργο ανοιχτού κώδικα, οι μελλοντικές τάσεις ανάπτυξης του bqplot αξίζουν προσοχής:
Εν ολίγοις, το bqplot, ως ένα ισχυρό διαδραστικό εργαλείο οπτικοποίησης δεδομένων, έχει ευρείες προοπτικές εφαρμογής στον τομέα της επιστήμης δεδομένων. Με συνεχή βελτιστοποίηση και επέκταση χαρακτηριστικών, θα συνεχίσει να παρέχει περισσότερες δυνατότητες για ανάλυση και οπτικοποίηση δεδομένων.