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

摘要:
#绘图纯散点图名称=“标记”#图例名称)数据=[trace0]pyplt(数据,

今天在研究Plotly绘制散点图的方法

使用Python3.6 + Plotly

Plotly版本2.0.0

在开始之前先说说,还需要安装库Numpy,安装方法在我的另一篇博客中有写到:https://www.cnblogs.com/ws17345067708/p/10531531.html

因为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放置的位置

运行程序会得到如下图所示图形

Python使用Plotly绘图工具,绘制散点图、线形图第1张

接下来我们画一个线性图,数据还是之前的数据。看看是什么样子,代码如下

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')

我们会得到如下图所示的线形图

Python使用Plotly绘图工具,绘制散点图、线形图第2张

下面我们把线性图,和散点图合到一起

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')

得到如下图所示图例

Python使用Plotly绘图工具,绘制散点图、线形图第3张

三个图在一张图中表示的例子

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')

得到如下图

Python使用Plotly绘图工具,绘制散点图、线形图第4张

可以看到,三个图,绘制在一张图上了!

也可以对样式进行设置下面看个例子,改变一下颜色,代码如下:

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')

 Python使用Plotly绘图工具,绘制散点图、线形图第5张

marker的参数设置很重要,设置颜色color,大小size

line设置线条宽度width,color 设置线条颜色等

免责声明:文章转载自《Python使用Plotly绘图工具,绘制散点图、线形图》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇Visual Studio快捷键不能使用解决办法Android 移动缩放的ImageView下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

async和await的小结

async 配合 await 使用 1、未使用 async 和 await  <el-button @click="getData">Promise</el-button> import getWeater from '@/app/login.js' methods: { getData() { // 未使用async...

SQL Server 本地数据库登录不上 解决方法

sql本地数据库登录不了的话。先看看自己计算机 服务 SQL server  (MSSQLSERVER)  没有打开的话,请打开。 今天说的情景模式是  你误删了windows登录;禁用了sa登录;sa密码忘记了;或是你计算机名字被公司修改了,老的名字忘记了;又或是你用的别人的之前安装好的SQL数据库,终归,你本地数据库登录不了,用不了,拉了胯。   1...

socket.io建立长连接

   socket.io是基于node.js,在命令行里输入npm socket.io下载模块,用node.js搭建后台 示例代码,客户端 1 <!DOCTYPE html> 2 <html lang="zh-CN"> 3 <head> 4 <meta charset="UTF-8"> 5...

Python-Dataframe数据清洗之0值、缺失值、重复数据(以多列去重)、不符合累计递增趋势的异常数据(跳大值和跳小值,兼噪声值)清洗

 起步者的苦苦挣扎...... 方法一(单个ID去清洗):这个代码和上面的差不多,只是它进行的是单个递增趋势逐个进行清洗,,总的来说对于常见的异常情况有不错效果     缺点:效率比较低,半自动化,需要清洗多个ID的异常数据时,手动重复的动作比较多 import cx_Oracle import pandas as pd import numpy as...

C#连接Oracle数据库的方法(Oracle.DataAccess.Client也叫ODP.net)

官方下载地址(ODP.net)(中文):http://www.oracle.com/technetwork/cn/topics/dotnet/downloads/index.html 官方下载地址(ODP.net):http://www.oracle.com/technetwork/topics/dotnet/downloads/index.html 首先...

mysql学习笔记(三)----函数

Mysql函数 数学函数 函数名 描述 Eg ABS(X) 绝对值 Select ABS(-2); PI() 圆周率 Select PI(); SQRT(X) 平方根 Select sqrt(X); MOD(X,Y) 求余 Select mod(4,3); CEIL(X) 返回不小于X的最小整数 Select ceil(3.5);...