python使用Plotly绘图工具绘制散点图、线形图
作者:成都-王帅 发布时间:2022-06-24 08:11:50
标签:python,plotly,散点图,线形图
今天在研究Plotly绘制散点图的方法,供大家参考,具体内容如下
使用Python3.6 + Plotly
Plotly版本2.0.0
在开始之前先说说,还需要安装库Numpy,安装方法在我的另一篇博客中有写到:python3.6下Numpy库下载与安装图文教程
因为Plotly没有自己独立的线性图形函数,所以把线性图形与散点图形全部用一个函数实现
这个函数是Scatter函数
下面举几个简单的例子
先画一个纯散点图,代码如下:
import plotly
import plotly.graph_objs as go
import numpy
pyplt = plotly.offline.plot #使用离线模式
N = 100
random_x = numpy.linspace(0, 1, N)
random_y0 = numpy.random.randn(N)+5
random_y1 = numpy.random.randn(N)
random_y2 = numpy.random.randn(N)-5
#上面是一些随机数据
trace0 = go.Scatter(
x = random_x,
y = random_y0,
mode = 'markers', # 绘制纯散点图
name = 'markers' # 图例名称
)
data = [trace0]
pyplt(data, filename='tmp/scatter_diagram.html')#html放置的位置
运行程序会得到如下图所示图形
接下来我们画一个线性图,数据还是之前的数据。看看是什么样子,代码如下
import plotly
import plotly.graph_objs as go
import numpy
pyplt = plotly.offline.plot #使用离线模式
N = 100
random_x = numpy.linspace(0, 1, N)
random_y0 = numpy.random.randn(N)+5
random_y1 = numpy.random.randn(N)
random_y2 = numpy.random.randn(N)-5
trace1 = go.Scatter(
x = random_x,
y = random_y2,
mode = 'lines', # 线性图
name = 'lines'
)
data = [trace1]
pyplt(data, filename='tmp/line.html')
我们会得到如下图所示的线形图
下面我们把线性图,和散点图合到一起
import plotly
import plotly.graph_objs as go
import numpy
pyplt = plotly.offline.plot #使用离线模式
N = 100
random_x = numpy.linspace(0, 1, N)
random_y0 = numpy.random.randn(N)+5
random_y1 = numpy.random.randn(N)
random_y2 = numpy.random.randn(N)-5
trace1 = go.Scatter(
x = random_x,
y = random_y1,
mode = 'lines+markers', # 散点+线的绘图
name = 'lines+markers'
)
data = [trace1]
pyplt(data, filename='tmp/add.html')
得到如下图所示图例
三个图在一张图中表示的例子
import plotly
import plotly.graph_objs as go
import numpy
pyplt = plotly.offline.plot #使用离线模式
N = 100
random_x = numpy.linspace(0, 1, N)
random_y0 = numpy.random.randn(N)+5
random_y1 = numpy.random.randn(N)
random_y2 = numpy.random.randn(N)-5
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,tarace2]
pyplt(data, filename='tmp/all.html')
得到如下图
可以看到,三个图,绘制在一张图上了!
也可以对样式进行设置下面看个例子,改变一下颜色,代码如下:
import plotly
import plotly.graph_objs as go
import numpy
pyplt = plotly.offline.plot #使用离线模式
N = 100
random_x = numpy.linspace(0, 1, N)
random_y0 = numpy.random.randn(N)+5
random_y1 = numpy.random.randn(N)
random_y2 = numpy.random.randn(N)-5
trace0 = go.Scatter(
x = random_x,
y = random_y0,
mode = 'markers', # 纯散点图
name = 'markers', # 曲线名称
marker = dict(
size = 10, # 设置点的宽度
color = 'rgba(255, 182, 193, .9)', #设置曲线的颜色
line = dict(
width = 2, # 设置线条的宽度
color = 'rgb(0, 255, 0)' #设置线条的颜色
)
)
)
data = [trace0]
pyplt(data, filename='tmp/style.html')
marker的参数设置很重要,设置颜色color,大小size
line设置线条宽度width,color 设置线条颜色等
来源:https://blog.csdn.net/u012798683/article/details/88558606


猜你喜欢
- 前记在Python3.7后官方库出现了contextvars模块, 它的主要功能就是可以为多线程以及asyncio生态添加上下文功能,即使程
- 异常详细信息: System.Web.HttpException: 无法向会话状态服务器发出会话状态请求。请确保已启动 ASP.NET St
- 1. 概述动态规划算法应用非常之广泛。对于算法学习者而言,不跨过动态规划这道门,不算真正了解算法。初接触动态规划者,理解其思想精髓会存在一定
- Python 定义了类型转换函数以将一种数据类型直接转换为另一种数据类型,这在日常和竞争性编程中很有用。本文旨在提供有关某些转换函数的信息。
- 一、前言一首歌热门了,参与评论的人也很多,那我们有时候想看看评论,也只能看看热门的评论,大部分人都说的什么,咱也不知道呀~那本次咱们就把歌词
- 背景:Email地址存于MSSql一用户信息表中,数量上万。公司自有服务器,集SMTP,POP3,WWW,FTP,MSSql,DNS等多种服
- count(*)实现1、MyISAM:将表的总行数存放在磁盘上,针对无过滤条件的查询可以直接返回如果有过滤条件的count(*),MyISA
- 打开VS2013 —> 工具 —> 选项 —> 环境 —> 字体和颜色 —> 纯文本(显示项中) —>
- random模块该模块实现了各种分布的伪随机数生成器。(包括在实数轴上计算均匀、正态(高斯)、对数正态、负指数、伽马和贝塔分布的函数)不应将
- 项目编写过程中,总能遇见对字典进行排序什么的,如果要实现多条件排序只需要下面几行代码实现。充分体现了python的好处了。teamitems
- 字典树(Trie)可以保存一些字符串->值的对应关系。基本上,它跟 Java 的 HashMap 功能相同,都是 key-value
- 一、心知天气API密钥获取首先,访问https://www.seniverse.com,进行登录或者注册操作,然后在控制台上创建一个免费版的
- 前言:今天和大家分享自己总结的6个常用的Pandas数据处理代码,对于经常处理数据的coder最好熟练掌握。选取有空值的行在观察数据结构时,
- 插入数据MySQL 表中使用 INSERT INTO SQL语句来插入数据。你可以通过 mysql> 命令提示窗口中向数据表中插入数据
- 如何去读取一个没有表头的二维csv文件(如下图所示)?并以元组的形式表现数据:((1.0, 0.0, 3.0, 180.0), (2.0,
- 本文实例为大家分享了JavaScript实现简易轮播图效果的具体代码,供大家参考,具体内容如下全部代码:<!DOCTYPE html&
- 功能描述目标完成多账号微信小程序每天自动签到输出签到成功则向微信群发送签到成功的信息否则提示用户签到失败,需手动签到包管理requestsi
- 有时候我们传.py文件给别人时,需要添加一些文件头注释。为了不用每次新建文件时都去手动添加作者、创建日期等信息,我们可以设置一套模板,在新建
- 目的是想通过给定一个ID,取出所有的子ID,包括子ID的子ID。一开始写成FUNCTION,因为FUNCTION调用方便,但是报错:ERRO
- 在进行特征工程、划分数据集的工作中,drop()函数都能派上用场。它可以轻松剔除数据、操作列和操作行等。drop()详细的语法如下:删除行是