Python可视化最频繁使用的10大工具总结
作者:Python数据开发 发布时间:2022-07-01 04:00:17
今天介绍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 可视化库,大家最好自己动手体验一下哦!
来源:https://blog.csdn.net/m0_59596937/article/details/129659413


猜你喜欢
- 前言上一篇博文我们讲到了节流函数的应用场景,我们知道了节流函数可以用在模糊查询、scroller、onresize等场景;今天这篇我们来讲防
- 导入相关库import time1. 时间戳1.1 time.time()time.time()可以得到的是 时间戳 。即 1970年1月1
- 前言根据加锁的范围,MySQL 里面的锁大致可以分成全局锁,表级锁,行锁。行锁已经在前面几篇文章说过1. 全局锁全局锁就是对整个数据库实例加
- 如下所示:import threadingimport timesem=threading.Semaphore(4) #限制线程的最大数量为
- 一、 [::-1]import numpy as npimport numpy as npx = np.arange(1, 6)print(
- 如何用JMail同时给多人发信?在ASP中,为什么我在Jmail收件人处指定多个收件人时,像这样:JMail.AddRecipient&nb
- 本文介绍了python+opencv像素的加减和加权操作的实现,分享给大家。# 目标:# 1、在图像上进行算术操作,如加减以及按位操作# 2
- 在mysql网站时拿到的rpm包只能用root安装,不支持relocate用源码安装后./configure --prefix=/home/
- 最简单的模式,C/S模式实现聊天室从半双工开始,何谓半双工?半双工即是说双方可以互发消息,但一次只能一个用户发送。 只要稍微会点s
- 本文实例讲述了Python实现的摇骰子猜大小功能小游戏。分享给大家供大家参考,具体如下:最近学习Python的随机数,逻辑判断,循环的用法,
- 前言上次做了用于输入样例格式修改,相当于测试用例的过滤器,这次我们使用类似的思路来做一个对于像C++代码中块注释的过滤器。/** * Def
- pymysql 是 python 用来操作MySQL的第三方库,下面具体介绍和使用该库的基本方法。1.建立数据库连接通过 connect 函
- 1、使用empty方法创建数组该方式可以创建一个空数组,dtype可以指定随机数的类型,否则随机采用一种类型生成随机数。import num
- asp之家注:为什么要防止访客频繁刷新页面呢?也许你会说他想刷新就让他刷新吧,没什么关系,而且还增加了网页的PV,呵呵。但是有的页面我们可能
- group_concat()函数的参数是可以直接使用order by排序的。666。。下面通过例子来说明,首先看下面的t1表。比如,我们要查
- 一、观察者模式观察者模式,必须包含 “观察者” 和 “被观察者&rdqu
- 很久没写过东西了,今天看了chinahuman 的《用asp自动解析网页中的图片地址,并将其保存到本地服务器》,于是优化了这个程序,并且将所
- 如何在第10000名来访者访问时显示中奖页面?看看下面的代码:< SCRIPT LANGUAGE=VBScript
- 因为刚学vue然后自己自习了一下axios,然后想写一个简单的查询后台数据<tr v-for=" user in uList
- 如下所示: static void Main()&nbs