查看原文
其他

探索Python强大引擎:将数据可视化提升到新高度的10个库

数据应用学院 大数据应用 2023-08-17

今日份知识你摄入了么?

凭借十多年的数据分析和可视化经验,我遇到了许多工具和技术,使这个过程既高效又迷人。在这篇博客中,我想与你分享10个在数据可视化方面优于竞争对手的Python库。



01

Plotly:前所未有的交互式可视化


当谈到创建交互式和令人惊叹的可视化时,我相信Plotly是首选库。凭借其直观的界面和丰富的功能,我认为Plotly使数据分析师和可视化爱好者能够将他们的数据带入生活。


下面是我使用Plotly创建交互式条形图的方法:


import plotly.express as pxdata = {'Category': ['A', 'B', 'C'], 'Value': [10, 15, 7]}df = pd.DataFrame(data)fig = px.bar(df, x='Category', y='Value')fig.show()


02

Seaborn:美与简约的结合


当谈到创建具有视觉吸引力和信息丰富的统计图形时,Seaborn是我的首选库。我认为Seaborn优雅而简洁的语法使得生成复杂的可视化变得轻而易举。


import seaborn as snstips = sns.load_dataset('tips')sns.boxplot(x='day', y='total_bill', data=tips)


03

Matplotlib:多功能可视化的经典选择


Matplotlib已经存在很长时间了,我相信它在数据分析师和可视化爱好者的心中占有特殊的位置。凭借其广泛的功能和灵活性,我认为Matplotlib允许你创建广泛的可视化。


下面是用Matplotlib创建的简单折线图:


import matplotlib.pyplot as pltx = [1, 2, 3, 4, 5]y = [10, 8, 6, 4, 2]plt.plot(x, y)plt.show()


04

Altair:快速声明式可视化


如果你喜欢简洁而富有表现力的代码,我认为Altair是适合你的库。凭借其声明式可视化方法,我相信Altair能够帮助你快速生成强大的可视化效果。


下面是我使用Altair创建散点图的方法:


import altair as altfrom vega_datasets import datacars = data.cars()alt.Chart(cars).mark_circle().encode(    x='Horsepower',    y='Miles_per_Gallon',    color='Origin').interactive()


05

Bokeh:网络的交互式可视化


当谈到为网络创建交互式可视化时,我认为Bokeh是一个很好的选择。凭借其生成可嵌入Web应用程序的交互式绘图的能力,我相信Bokeh开启了一个充满可能性的世界。


下面是使用Bokeh创建带有工具提示的散点图的示例:


from bokeh.plotting import figure, showfrom bokeh.models import HoverToolfrom bokeh.sampledata.iris import flowersp = figure(title='Iris Dataset', x_axis_label='Petal Length', y_axis_label='Petal Width')p.add_tools(HoverTool(tooltips=[('Species', '@species'), ('Sepal Width', '@sepal_width')]))p.circle(x='petal_length', y='petal_width', size=8, source=flowers)show(p)


06

ggplot:利用R ggplot2的力量


如果你是R的ggplot2库的粉丝,我相信ggplot是你的完美选择。通过ggplot2的Python实现,我认为ggplot允许你创建视觉上令人惊叹且高度可定制的图形。


下面是使用ggplot创建散点图的示例:


from ggplot import *df = pd.DataFrame({'x': [1, 2, 3, 4, 5], 'y': [10, 8, 6, 4, 2]})ggplot(aes(x='x', y='y'), data=df) + geom_point()


07

NetworkX:可视化复杂网络


当涉及到可视化复杂网络时,我相信NetworkX是一个不可或缺的库。凭借其创建和分析网络的综合工具集,我认为NetworkX使你能够从复杂的网络结构中获得见解。


下面是一个使用NetworkX可视化社交网络的例子:


import networkx as nximport matplotlib.pyplot as pltG = nx.karate_club_graph()nx.draw(G, with_labels=True)plt.show()


08

Wordcloud:释放文本可视化的力量


文本可视化是数据分析的重要组成部分,我认为Wordcloud是实现这一目的的绝佳库。凭借其生成迷人且富有洞察力词云的能力,我相信Wordcloud能够让你从文本数据中提取有意义的信息。


下面是一个使用Wordcloud从文本语料库创建词云的示例:


from wordcloud import WordCloudimport matplotlib.pyplot as plttext = "Lorem ipsum dolor sit amet, consectetur adipiscing elit."wordcloud = WordCloud().generate(text)plt.imshow(wordcloud, interpolation='bilinear')plt.axis('off')plt.show()


09

Pygal:交互式SVG图表


如果你正在寻找交互式SVG图表,我相信Pygal是一个很好的选择。凭借其基于SVG的可视化方法,我认为Pygal允许你创建交互式且具有视觉吸引力的图表,这些图表可以轻松地嵌入到Web应用程序中。


下面是一个使用Pygal创建条形图的示例:


import pygalbar_chart = pygal.Bar()bar_chart.add('Series', [1, 3, 2, 5, 4])bar_chart.render()


10

Folium:图表变得简单


最后但同样重要的是,如果你对创建交互式图表感兴趣,我相信Folium是适合你的库。凭借与leaflet.js的无缝集成,我认为Folium可以轻松生成交互式且视觉上令人惊叹的图表。


下面是一个使用Folium创建带有标记的图表的例子:


import foliumm = folium.Map(location=[37.7749, -122.4194], zoom_start=12)folium.Marker(location=[37.7749, -122.4194], popup='San Francisco').add_to(m)m


结论:利用Python的强大功能,实现令人难忘的数据可视化。


总之,有了这10个Python库,你可以将数据可视化提升到新的高度。从交互式绘图到令人惊叹的图表,我相信这些库提供了各种各样的工具和技术来释放你的创造力。所以,继续探索它们,让你的数据讲述引人入胜的故事。


记住,“从可视化到具体化:释放Python的力量!”

原文作者:Gabe A, M.Sc.

翻译作者:文玲

美工编辑:过儿

校对审稿:Chuang

原文链接:https://levelup.gitconnected.com/discover-the-python-powerhouse-10-libraries-that-take-data-visualization-to-new-heights-8d7664372d02

本周公开课预告


往期精彩回顾


迎战秋招,数据科学家求职训练营限量半价!!!
你需要早点知道的Jupyter Notebook提示和技巧
GPT-4的秘密被揭晓了!
Python简化:使用ChatGPT进行数据可视化注释
Notion AI与ChatGPT:为什么我选择 ChatGPT Plus




点「在看」的人都变好看了哦

点击“阅读原文”查看数据应用学院核心课程

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存