首頁 > 軟體

Python視覺化最頻繁使用的10大工具總結

2023-03-25 06:01:54

今天介紹Python當中十大視覺化工具,每一個都獨具特色,驚豔一方。

Matplotlib

Matplotlib 是 Python 的一個繪相簿,可以繪製出高質量的折線圖、散點圖、柱狀圖、條形圖等等。它也是許多其他視覺化庫的基礎。

import matplotlib.pyplot as plt
import numpy as np

x = np.linspace(0, 10, 100)
y = np.sin(x)

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

Seaborn

Seaborn 是基於 Matplotlib 的 Python 資料視覺化庫,專門用於繪製統計圖形,如熱圖、小提琴圖、帶誤差線的折線圖等等。

import seaborn as sns
import pandas as pd

df = pd.read_csv('data.csv')

sns.boxplot(x='day', y='total_bill', data=df)

Plotly

Plotly 是一個互動式資料視覺化庫,可以繪製出高質量的折線圖、散點圖、3D 圖形等等。它支援多種程式語言,如 Python、R、JavaScript 等等。

import plotly.graph_objs as go
import numpy as np

x = np.linspace(0, 10, 100)
y = np.sin(x)

fig = go.Figure(data=go.Scatter(x=x, y=y))
fig.show()

Bokeh

Bokeh 是一個互動式資料視覺化庫,也支援多種程式語言,如 Python、R、JavaScript 等等。它可以繪製出高質量的折線圖、散點圖、柱狀圖、條形圖等等。

from bokeh.plotting import figure, show
import numpy as np

x = np.linspace(0, 10, 100)
y = np.sin(x)

p = figure(title='Sine Wave')
p.line(x, y, legend_label='Sine')
show(p)

Altair

Altair 是一個基於 Vega-Lite 的 Python 視覺化庫,可以快速輕鬆地繪製出高質量的折線圖、散點圖、柱狀圖等等。

import altair as alt
import pandas as pd

df = pd.read_csv('data.csv')

alt.Chart(df).mark_bar().encode(
    x='year',
    y='sales',
    color='region'
)

ggplot

ggplot 是一個基於 R 語言中的 ggplot2 庫的 Python 視覺化庫,可以繪製出高質量的散點圖、柱狀圖、箱線圖等等。

from ggplot import *
import pandas as pd

df = pd.read_csv('data.csv')

ggplot(df, aes(x='date', y='value', color='variable')) + 
    geom_line() + 
    theme_bw()

Holoviews

Holoviews 是一個 Python 視覺化庫,可以建立互動式的資料視覺化,支援多種型別的視覺化圖形,如折線圖、散點圖、柱狀圖、熱力圖等等。

import holoviews as hv
import numpy as np

x = np.linspace(0, 10, 100)
y = np.sin(x)

hv.extension('bokeh')
hv.Curve((x, y))

Plotnine

Plotnine 是一個基於 Python 的 ggplot2 庫的視覺化庫,它可以建立高質量的資料視覺化圖形,如散點圖、柱狀圖、線圖等等。

from plotnine import *
import pandas as pd

df = pd.read_csv('data.csv')

(ggplot(df, aes(x='year', y='sales', fill='region')) +
 geom_bar(stat='identity', position='dodge'))

Wordcloud

Wordcloud 是一個用於生成詞雲的 Python 庫,可以將文字中出現頻率高的詞彙以圖形的方式展示出來。

from wordcloud import WordCloud
import matplotlib.pyplot as plt

text = "Python is a high-level programming language"

wordcloud = WordCloud().generate(text)

plt.imshow(wordcloud, interpolation='bilinear')
plt.axis('off')
plt.show()

Networkx

Networkx 是一個用於建立、操作和視覺化複雜網路的 Python 庫。它支援建立多種型別的網路結構,如有向圖、無向圖、加權圖等等。

import networkx as nx
import matplotlib.pyplot as plt

G = nx.DiGraph()

G.add_edge('A', 'B')
G.add_edge('B', 'C')
G.add_edge('C', 'D')
G.add_edge('D', 'A')

pos = nx.spring_layout(G)

nx.draw_networkx_nodes(G, pos, node_size=500)
nx.draw_networkx_edges(G, pos)
nx.draw_networkx_labels(G, pos)

plt.axis('off')
plt.show()

好啦,以上就是精心挑選的 Python 視覺化庫,大家最好自己動手體驗一下哦!

總結

到此這篇關於Python視覺化最頻繁使用的10大工具的文章就介紹到這了,更多相關Python視覺化工具內容請搜尋it145.com以前的文章或繼續瀏覽下面的相關文章希望大家以後多多支援it145.com!


IT145.com E-mail:sddin#qq.com