Python 可视化神器Plotly详解

(编辑:jimmy 日期: 2024/12/28 浏览:2)

Python 可视化神器Plotly详解

文 | 潮汐

来源:Python 技术「ID: pythonall」

学习Python是做数分析的最基础的一步,数据分析离不开数据可视化。Python第三方库中我们最常用的可视化库是 pandas,matplotlib,pyecharts, 当然还有 Tableau,另外最近在学习过程中发现另一款可视化神器-Plotly,它是一款用来做数据分析和可视化的在线平台,功能非常强大, 可以在线绘制很多图形比如条形图、散点图、饼图、直方图等等。除此之外,它还支持在线编辑,以及多种语言 python、javascript、matlab、R等许多API。它在python中使用也非常简单,直接用pip install plotly 安装好即可使用。本文将结合 plotly 库在 jupyter notebook 中来进行图形绘制。

使用 Plotly 可以画出很多媲美Tableau的高质量图,如下图所示:

Python 可视化神器Plotly详解

Python 可视化神器Plotly详解

折线点图

折现点图画图步骤如下:首先在 Pycharm 界面输入 jupyter notebook后进入网页编辑界面,新建一个文件,导入相应的包即可进行图形绘制:

# 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
#设置编辑模式
plotly.offline.init_notebook_mode(connected=True)
#制作折线图
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)

显示结果如下:

Python 可视化神器Plotly详解

直方图

# 直方图
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)

显示结果如下:

Python 可视化神器Plotly详解

散点图

# 散点图
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)

显示结果如下:

Python 可视化神器Plotly详解

总结

今天的文章主要学习可视化神器-plotpy 的相关操作,希望在平时的工作中有所应用。更多的内容详见 https://plotly.com/python/

一句话新闻

微软与英特尔等合作伙伴联合定义“AI PC”:键盘需配有Copilot物理按键
几个月来,英特尔、微软、AMD和其它厂商都在共同推动“AI PC”的想法,朝着更多的AI功能迈进。在近日,英特尔在台北举行的开发者活动中,也宣布了关于AI PC加速计划、新的PC开发者计划和独立硬件供应商计划。
在此次发布会上,英特尔还发布了全新的全新的酷睿Ultra Meteor Lake NUC开发套件,以及联合微软等合作伙伴联合定义“AI PC”的定义标准。