python使用Plotly绘图工具绘制气泡图

yipeiwu_com5年前Python基础

今天来讲讲如何使用Python 绘图工具,Plotly来绘制气泡图。

气泡图的实现方法类似散点图的实现。修改散点图中点的大小,就变成气泡图。

实现代码如下:

import plotly as py
import plotly.graph_objs as go
 
pyplt = py.offline.plot
 
trace0 = go.Scatter(
 x=[1, 2, 3, 4, 5, 6, 7],
 y=[8, 10, 12, 14, 16, 18, 20],
 mode='markers',
 marker=dict(
 size=[10, 14, 16, 18, 20, 42, 64], #设置气泡大小
 
 )
)
 
data = [trace0]
pyplt(data, filename='tmp/1.html')

会得到如下图所示的气泡图:

下面这个例子讲解如何设置气泡点的大小,颜色,还有提示文字,是否显示颜色条等信息

代码如下:

import plotly as py
import plotly.graph_objs as go
 
pyplt = py.offline.plot
 
trace0 = go.Scatter(
 x=[1, 2, 3, 4],
 y=[10, 11, 12, 13],
 mode='markers',
 text=['第1个气泡<br>size: 40<br>这里可以填写内容', '第2个气泡<br>size: 60', '第3个气泡<br>size: 80', '第4个气泡<br>size: 100'],
 marker=dict(
 color= [120, 125, 130, 135],
 opacity=[1, 0.8, 0.6, 0.4],
 size=[40, 60, 80, 100],
 showscale= True,
 )
)
 
data = [trace0]
pyplt(data, filename='tmp/1.html')

运行程序,得到如下图所示:

说明一下。

text可以指定每一个点,对应的悬浮窗文字信息(<br>表示换行)

color指定每个点的颜色,opacity指定点的透明度大小。

size 指定每个点的大小

showscale = True 表示显示右边的颜色条。

接下来讲解如何将气泡图进行缩放

调节大小通过设置参数sizeref进行设置的,当这个参数大于1时,将会减小气泡的大小。

当这个参数小于1时,将增大气泡的大小。

import plotly as py
import plotly.graph_objs as go
pyplt = py.offline.plot
trace0 = go.Scatter(
 x=[1, 2, 3, 4],
 y=[10, 11, 12, 13],
 text=['A</br>size: 40</br>default', 'B</br>size: 60</br>default', 'C</br>size: 80</br>default', 'D</br>size: 100</br>default'],
 mode='markers',
 name='default',
 marker=dict(
 size=[400, 600, 800, 1000],
 sizemode='area',
 )
)
trace1 = go.Scatter(
 x=[1, 2, 3, 4],
 y=[14, 15, 16, 17],
 text=['A</br>size: 40</br>sizeref: 0.2', 'B</br>size: 60</br>sizeref: 0.2', 'C</br>size: 80</br>sizeref: 0.2', 'D</br>size: 100</br>sizeref: 0.2'],
 mode='markers',
 name = 'ref0.2',
 marker=dict(
 size=[400, 600, 800, 1000],
 sizeref=0.2,
 sizemode='area',
 )
)
trace2 = go.Scatter(
 x=[1, 2, 3, 4],
 y=[20, 21, 22, 23],
 text=['A</br>size: 40</br>sizeref: 2', 'B</br>size: 60</br>sizeref: 2', 'C</br>size: 80</br>sizeref: 2', 'D</br>size: 100</br>sizeref: 2'],
 mode='markers',
 name='ref2',
 marker=dict(
 size=[400, 600, 800, 1000],
 sizeref=2,
 sizemode='area',
 )
)
 
data = [trace0, trace1, trace2]
pyplt(data, filename='tmp/1.html')

得到如下图所示:

参数sizeref=2 将气泡的大小设置为原来的1/2

参数sizemodes有两个值1.diameter和area这两个值。

1值按照直径缩放,2值按照表示面积进行缩放。

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

相关文章

用python删除java文件头上版权信息的方法

在使用他人代码时,为不保留文件头部版权信息,需要一个个删掉,费时费力, 写了个脚本,简单清除掉目录下所有的文件的头部版权信息。 # -*- coding: utf8 -*- '''...

使用python telnetlib批量备份交换机配置的方法

使用了telnetlib模块,首先登录到交换机,列出并获取配置文件的名称,然后通过tftp协议将配置文件传输到文件服务器上,为避免配置文件覆盖,将备份的配置文件名称统一加入日期以作区分。...

python使用WMI检测windows系统信息、硬盘信息、网卡信息的方法

本文实例讲述了python使用WMI检测windows系统信息、硬盘信息、网卡信息的方法。分享给大家供大家参考。具体实现方法如下: #!/usr/bin/env python #...

Django 中自定义 Admin 样式与功能的实现方法

Django 中自定义 Admin 样式与功能的实现方法

自定义 Admin 样式与功能 1 页面修改中文 1.1 语言设置为中文 settings.py LANGUAGE_CODE = 'zh-hans' 修改结果 1.2 应用管理设置为...

python删除本地夹里重复文件的方法

上次的博文主要说了从网上下载图片,于是我把整个笑话网站的图片都拔下来了,但是在拔取的图片中有很多重复的,比如说页面的其他图片、重复发布的图片等等。所以我又找了python的一些方法,写了...