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


Posted in Python onApril 01, 2019

今天来讲讲如何使用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')

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

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

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

代码如下:

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

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

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

说明一下。

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

得到如下图所示:

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

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

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

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

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python urllib、urllib2、httplib抓取网页代码实例
May 09 Python
浅谈Python中列表生成式和生成器的区别
Aug 03 Python
Python正则表达式使用经典实例
Jun 21 Python
Python队列的定义与使用方法示例
Jun 24 Python
使用python实现BLAST
Feb 12 Python
Python3单行定义多个变量或赋值方法
Jul 12 Python
Python实现查找二叉搜索树第k大的节点功能示例
Jan 24 Python
从0开始的Python学习016异常
Apr 08 Python
检测python爬虫时是否代理ip伪装成功的方法
Jul 12 Python
Python 一键获取百度网盘提取码的方法
Aug 01 Python
解决Keras 自定义层时遇到版本的问题
Jun 16 Python
OpenCV+python实现实时目标检测功能
Jun 24 Python
python3 json数据格式的转换(dumps/loads的使用、dict to str/str to dict、json字符串/字典的相互转换)
Apr 01 #Python
利用Python+阿里云实现DDNS动态域名解析的方法
Apr 01 #Python
PythonWeb项目Django部署在Ubuntu18.04腾讯云主机上
Apr 01 #Python
python使用Plotly绘图工具绘制柱状图
Apr 01 #Python
python使用Plotly绘图工具绘制水平条形图
Mar 25 #Python
Python进阶之@property动态属性的实现
Apr 01 #Python
彻底理解Python中的yield关键字
Apr 01 #Python
You might like
php中文件上传的安全问题
2006/10/09 PHP
用php和MySql来与ODBC数据连接
2006/10/09 PHP
php将数据库导出成excel的方法
2010/05/07 PHP
php ftp文件上传函数(基础版)
2010/06/03 PHP
php中is_null,empty,isset,unset 的区别详细介绍
2013/04/28 PHP
PHP6 中可能会出现的新特性预览
2014/04/04 PHP
php常用字符串处理函数实例分析
2014/11/22 PHP
php源码分析之DZX1.5字符串截断函数cutstr用法
2015/06/17 PHP
解析WordPress中函数钩子hook的作用及基本用法
2015/12/22 PHP
laravel 5.4中实现无限级分类的方法示例
2017/07/27 PHP
php实现姓名根据首字母排序的类与方法(实例代码)
2018/05/16 PHP
Yii使用DbTarget实现日志功能的示例代码
2020/07/21 PHP
超棒的javascript页面顶部卷动广告效果
2007/12/01 Javascript
6个DIV 135或246间隔一秒轮番显示效果
2010/07/24 Javascript
Jquery上传插件 uploadify v3.1使用说明
2012/06/18 Javascript
treepanel动态加载数据实现代码
2012/12/15 Javascript
jquery全选checkBox功能实现代码(取消全选功能)
2013/12/10 Javascript
jQuery热气球动画半透明背景的后台登录界面代码分享
2015/08/28 Javascript
通过js获取上传的图片信息(临时保存路径,名称,大小)然后通过ajax传递给后端的方法
2015/10/01 Javascript
分享JavaScript与Java中MD5使用两个例子
2015/12/23 Javascript
JS代码实现table数据分页效果
2016/05/26 Javascript
Angularjs中的ui-bootstrap的使用教程
2017/02/19 Javascript
使用post方法实现json往返传输数据的方法
2019/03/30 Javascript
微信小程序实现用table显示数据库反馈的多条数据功能示例
2019/05/07 Javascript
详解Vue-cli3.X使用px2rem遇到的问题
2019/08/09 Javascript
nodejs实现UDP组播示例方法
2019/11/04 NodeJs
vue 内联样式style中的background用法说明
2020/08/05 Javascript
Windows下安装python2.7及科学计算套装
2015/03/05 Python
Python优化技巧之利用ctypes提高执行速度
2016/09/11 Python
python 实现数组list 添加、修改、删除的方法
2018/04/04 Python
python使用zip将list转为json的方法
2018/12/31 Python
Python OpenCV对本地视频文件进行分帧保存的实例
2019/01/08 Python
html5给汉字加拼音加进度条的实现代码
2020/04/07 HTML / CSS
Stefania Mode英国:奢华设计师和时尚服装
2017/10/23 全球购物
安全生产宣传标语
2014/06/06 职场文书
大学生团支书竞选稿
2015/11/21 职场文书