python使用Plotly绘图工具绘制散点图、线形图

yipeiwu_com7年前Python基础

今天在研究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 设置线条颜色等

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

python进阶教程之文本文件的读取和写入

Python具有基本的文本文件读写功能。Python的标准库提供有更丰富的读写功能。 文本文件的读写主要通过open()所构建的文件对象来实现。 创建文件对象 我们打开一个文件,并使用一...

mysql 之通过配置文件链接数据库

mysql 之通过配置文件链接数据库 配置文件jdbc.properties ##MySQL driver=com.mysql.jdbc.Driver url=jdbc\:mysql...

基于python+selenium的二次封装的实现

基于python+selenium的二次封装的实现

这是个人对selenium.webdriver写的一些常用操作的二次封装,也就相当于重写了,不再使用自带的框架,用自己写的框架完成。这样的话使代码更简洁,用自己的思想完成代码的编写。...

Python hashlib模块加密过程解析

这篇文章主要介绍了Python hashlib模块加密过程解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 hashlib模块  ...

Python编写一个验证码图片数据标注GUI程序附源码

Python编写一个验证码图片数据标注GUI程序附源码

做验证码图片的识别,不论是使用传统的ORC技术,还是使用统计机器学习或者是使用深度学习神经网络,都少不了从网络上采集大量相关的验证码图片做数据集样本来进行训练。 采集验证码图片,可以直接...