文 | 潮汐
来源:python 技术「id: pythonall」
学习python是做数分析的最基础的一步,数据分析离不开数据可视化。python第三方库中我们最常用的可视化库是 pandas,matplotlib,pyecharts, 当然还有 tableau,另外最近在学习过程中发现另一款可视化神器-plotly,它是一款用来做数据分析和可视化的在线平台,功能非常强大, 可以在线绘制很多图形比如条形图、散点图、饼图、直方图等等。除此之外,它还支持在线编辑,以及多种语言 python、javascript、matlab、r等许多api。它在python中使用也非常简单,直接用pip install plotly
安装好即可使用。本文将结合 plotly
库在 jupyter notebook
中来进行图形绘制。
使用 plotly 可以画出很多媲美tableau的高质量图,如下图所示:
折线点图
折现点图画图步骤如下:首先在 pycharm 界面输入 jupyter notebook
后进入网页编辑界面,新建一个文件,导入相应的包即可进行图形绘制:
1
2
3
4
5
6
|
# import pkg
from plotly.graph_objs import scatter,layout
import plotly
import plotly.offline as py
import numpy as np
import plotly.graph_objs as go
|
1
2
|
#设置编辑模式
plotly.offline.init_notebook_mode(connected = true)
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
|
#制作折线图
n = 150
random_x = np.linspace( 0 , 1 ,n)
random_y0 = np.random.randn(n) + 7
random_y1 = np.random.randn(n)
random_y2 = np.random.randn(n) - 7
trace0 = go.scatter(
x = random_x,
y = random_y0,
mode = 'markers' ,
name = 'markers'
)
trace1 = go.scatter(
x = random_x,
y = random_y1,
mode = 'lines+markers' ,
name = 'lines+markers'
)
trace2 = go.scatter(
x = random_x,
y = random_y2,
mode = 'lines' ,
name = 'lines'
)
data = [trace0,trace1,trace2]
py.iplot(data)
|
显示结果如下:
直方图
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
|
# 直方图
trace0 = go.bar(
x = [ 'jan' , 'feb' , 'mar' , 'apr' , 'may' , 'jun' ,
'jul' , 'aug' , 'sep' , 'oct' , 'nov' , 'dec' ],
y = [ 20 , 15 , 25 , 16 , 18 , 28 , 19 , 67 , 12 , 56 , 14 , 27 ],
name = 'primary product' ,
marker = dict (
color = 'rgb(49,130,189)'
)
)
trace1 = go.bar(
x = [ 'jan' , 'feb' , 'mar' , 'apr' , 'may' , 'jun' ,
'jul' , 'aug' , 'sep' , 'oct' , 'nov' , 'dec' ],
y = [ 29 , 14 , 32 , 14 , 16 , 19 , 25 , 14 , 10 , 12 , 82 , 16 ],
name = 'secondary product' ,
marker = dict (
color = 'rgb(204,204,204)'
)
)
data = [trace0,trace1]
py.iplot(data)
|
显示结果如下:
散点图
1
2
3
4
5
6
7
8
9
10
11
12
13
|
# 散点图
trace1 = go.scatter(
y = np.random.randn( 700 ),
mode = 'markers' ,
marker = dict (
size = 16 ,
color = np.random.randn( 800 ),
colorscale = 'viridis' ,
showscale = true
)
)
data = [trace1]
py.iplot(data)
|
显示结果如下:
总结
今天的文章主要学习可视化神器-plotpy 的相关操作,希望在平时的工作中有所应用。更多的内容详见 https://plotly.com/python/
到此这篇关于python 可视化神器plotly详解的文章就介绍到这了,更多相关python 可视化神器plotly内容请搜索服务器之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持服务器之家!
原文链接:https://blog.csdn.net/weixin_48923393/article/details/109665221