Plotly学习笔记

本文详细介绍了Plotly库的使用,包括散点图、折线图、柱状图、直方图、饼图、环形图、箱线图和热力图的绘制方法,以及如何设置颜色渐变。Plotly是一个强大的JavaScript绘图库,适用于数据科学家和分析师进行交互式数据可视化。
摘要由CSDN通过智能技术生成

Plotly介绍

  • Plotly是一个基于JavaScript的绘图库,Plotly绘图种类丰富,效果美观。
  • 易于保存和分享,Plotly的绘图结果可以与Web无缝集成。
  • Plotly默认的绘图结果是一个HTML网页文件,通过浏览器可以查看。

Plotly绘图命令

在真实项目中,使用Plotly进行绘图的完整流程包括:

  • 添加图轨数据trace
  • 设置画图布局,使用plotly.graph_objs.Layout命令
  • 集成图形、布局数据
  • 绘制图形输出,用plotly.offline.plot()或者在jupyter notebook环境下用plotly.offline.iplot()进行离线绘制

散点图/折线图

       图轨数据trace本质上是个字典,由于是绘制散点图,在这里要用到plotly.graph_objs.Scatter()函数创建散点图类的trace。trace包含的常用的键如下:

更多参数参照此帖

键值含义
x list类型;横坐标变量
y list类型;纵坐标变量
name 图例名称
maker dict类型;节点设置;{color:’ ‘,size:’ '}
text list类型;元素标识
textposition 标识位置
mode ‘markers’表示点;‘lines‘表示折线;’text‘标识标识文本;可以用’+‘号将两种模式结合起来
connectgaps bool类型;是否连接缺失值
color 颜色
opacity 透明度,值为0~1

       可以创建多个trace作为输出图中的多组数据,设置完trace后,将所有trace数据集成于一个列表中,作为图形数据对象。

       然后可以开始用plotly.graph_objs.Layout命令进行画面布局。其常用参数如下:

更多参数参照此帖

参数名 参数含义
title 图表标题
xaxis dict类型;{title:横坐标名称}
yaxis dict类型;{title:纵坐标名称}
showlegend bool类型;是否显示图例
legend dict类型;图例相对于左下角的位置;{x:横坐标的比例(<=1),y:纵坐标的比例(<=1)}
font dict类型;字体样式和大小;{size:字体大小}

       设置好布局后,就可以将trace和layout两个字典用plotly.graph_objs.Figure()集成在一起,结果将传给我们选择的绘图函数,最后将其用plotly.offline.plot()或在jupyter notebook环境下用plotly.offline.iplot()进行离线输出即可。

关于两个输出函数的差别

       虽然plotly.offline.plot()plotly.offline.iplot()两个函数都是离线输出图象的方法,但plot()会生成一个离线的html文件,里面放置图片,iplot()则直接在ipython notebook里面生成图片。

       当在notebook中编译时,若要设置默认输出模式,可以在前面加上下面这句代码:

plotly.offline.init_notebook_mode(connected=True)

示例:

import plotly as py
import plotly.graph_objs as go

text=[]
for i in range(15):
    s='t'+str(i+1)
    text.append(s)

trace1 = go.Scatter(
    x=[1, 2, 3, 4, 5,
       6, 7, 8, 9, 10,
       11, 12, 13, 14, 15],
    y=[10, 20, None, 15, 10,
       5, 15, None, 20, 10,
       10, 15, 25, 20, 10],
    text=text,
    textposition='top center',
    mode='markers+text+lines',
    name='<b>No</b> Gaps',  # Style name/legend entry with html tags
    connectgaps=True #是否连接缺失值
)
trace2 = go.Scatter(
    x=[1, 
  • 3
    点赞
  • 50
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值