python做气泡图的编程_Python绘制气泡图源代码,的,源码_胡锡进的博客-程序员宅基地

技术标签: python做气泡图的编程  

气泡图是一种特殊的散点图。每个气泡的大小与它代表的值成正比,横坐标通常代表年份,纵坐标通常代表分类。

利用Plotly库绘制出了一张漂亮的气泡图(代表1991年至1997年间中国、日本和美国每年的葡萄产量):

ff6ab8383f064a56100d2eb4fbd587e9.png

附上源代码:

import plotly as py

import plotly.graph_objs as go

# size列表元素为z值(即葡萄各年的产量,跟气泡大小成正比

size0 = [10, 14, 16, 18, 20, 42, 64]

size1 = [100, 30, 70, 85, 30, 42, 64]

size2 = [50, 22, 30, 65, 70, 66, 60]

trace0 = go.Scatter(

x=[1991, 1992, 1993, 1994, 1995, 1996, 1997],

y=['US', 'US', 'US', 'US', 'US', 'US', 'US'],

mode='markers+text',

marker=dict(

color='rgb(150,204,90)',

size= size0,

showscale = False,

),

text=list(map(str, size0)), #气泡上的数字标签,表示各年葡萄产量多少

textposition='middle center', #标签位置,居中

)

trace1 = go.Scatter(

x=[1991, 1992, 1993, 1994, 1995, 1996, 1997],

y=['JAPAN', 'JAPAN', 'JAPAN', 'JAPAN', 'JAPAN', 'JAPAN', 'JAPAN'],

mode='markers+text',

marker=dict(

color='rgb(255, 130, 71)',

size=size1,

showscale=False,

),

text=list(map(str,size1)),

textposition='middle center',

)

trace2 = go.Scatter(

x=[1991, 1992, 1993, 1994, 1995, 1996, 1997],

y=['CN', 'CN', 'CN', 'CN', 'CN', 'CN', 'CN'],

mode='markers+text',

marker=dict(

color='rgb(255, 193, 37)',

size=size2,

showscale=False,

),

text=list(map(str,size2)),

textposition='middle center',

)

layout = go.Layout(plot_bgcolor='rgb(10, 10, 10)', # 图的背景颜色

paper_bgcolor='rgb(20, 55, 100)', # 图像的背景颜色

font={ #字体设置

'size': 15,

'family': 'sans-serif',

'color': 'rgb(255, 255, 255)' # 将全局字体颜色设置颜色为葱绿

},

width=1000,

height=500,

xaxis=dict(title='Output of grapes per year in US, JAPAN and CN', ), # 设置坐标轴的标签

showlegend=False,

margin=dict(l=100, r=100, t=100, b=100),

hovermode = False, # 停止悬停鼠标显示数值的功能

)

data = [trace0, trace1, trace2]

fig = go.Figure(data=data, layout=layout)

#启动绘图直接绘制figure对象

py.offline.init_notebook_mode()

py.offline.plot(fig, filename='basic-scatter.html')

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/weixin_29161785/article/details/113505039

智能推荐

从零开始的c语言之旅_zeroGho的博客-程序员宅基地

大家好!这是我的第一篇博客,将记录我的C语言学习历程,希望能和大家共同进步,各位大佬多多指教!1、记录学习历程2、巩固知识,督促自己3、C生万物,打好基础。现在-------学无止境每周保持20h+的使时间学习。

leetcode 50-100题-java版(按顺序,不分专题)_请叫我人性与不人性结合体的博客-程序员宅基地

leetcode 50-100题-java版(53)最大子序和(58)最后一个单词的长度(62)不同路径(63)不同路径2(64)最小路径和(66)加一(67)二进制求和(69)x的平方根(70)爬楼梯(72)编辑距离(53)最大子序和给定一个整数数组 nums ,找到一个具有最大和的连续子数组(子数组最少包含一个元素),返回其最大和。示例 1:输入:nums = [-2,1,-3,4,-1,2,1,-5,4]输出:6解释:连续子数组 [4,-1,2,1] 的和最大,为 6 。示例 2:输入

vue .sync修饰符_weixin_44963140的博客-程序员宅基地

从 vue 2.3.0 开始,重新引入了 .sync 修饰符,但是这次它只是作为一个编译时的语法糖存在。他会被自动扩展为一个 自动更新父组件属性的 v-on 监听器。例如:<child :foo.sync=”msg”></child> 就会被扩展为: <child :foo=”bar” @update:foo=”val => bar = val”&...

单片机c语言执行从什么开始,学习C语言从什么开始学起_aniKuso的博客-程序员宅基地

我来说说我的学习经验,说句实在话我真正学会C语言是从开始学习单片机开始的,以前在上学时也学过C语言,由于只是应付考试,没有深入去学习,当时只是学习了C语言的一些皮毛没有领会C语言的精髓。后来由于工作的需要接触到单片机,刚开始使用汇编语言编写,感觉这种汇编语言晦涩难懂,在一次偶然的机会我从书中看到C语言也可以进行单片机程序的编写,我如获至宝就进入了用C语言编写单片机程序的阶段,下面我和朋友们谈谈我是...

C#实现UDP分包组包_aijianxie8808的博客-程序员宅基地

本文为Dennis Gao原创技术文章,发表于博客园博客,未经作者本人允许禁止任何形式的转载。场景介绍如果需要使用UDP传输较大数据,例如传输10M的图片,这突破了UDP的设计原则。UDP的设计是基于"datagram",也就是它假设你发送的每个数据包都能包含在单一的包内。并且设定UDP数据包的最大长度受基础网络协议的限制。UDP数据包的理论最大长度限制是 65535...

POST请求参数_㼛思雨的博客-程序员宅基地

设置form表单为:新建一个post.js里面内容为:从app.js中把主体部分拷贝过来。然后服务器运营post.js文件。加入data和end事件。在form.js中打开。输入用户名和密码。提交。结果返回ok .证明post请求后服务器响应了。服务器中也有存的内容引入querystring处理请求参数模块。引用querystring:重新输入名和密码,提交。此时用户名和密码以对象的形式来进行存储...

随便推点

redis做方法缓存_一个小白QAQ的博客-程序员宅基地_redis做缓存

redis做方法缓存为什么要拿redis做缓存?​ redis是一个完全基于内存、数据结构简单、采用单线程的工作方式(避免了不必要的上下文切换)、使用IO多路复用的一个key-value类型的数据库。查询速度要远比mysql这种关系型数据库要快得多。​ 系统绝大多数场景下都是读多写少,而mysql能够承受的并发量在每秒两三千(百度得到的数据)的时候就会面临宕机的风险了,并且查询速度极慢。1、查询流程​ 在请求达到后端之后,对需要进行缓存的接口,会先去redis中找有无数据,没有的话会继续走正常

【C语言篇】学习计算机之路——第一个程序_MAX在码字的博客-程序员宅基地

序我这一生所追求的,只不过是在一个有你的时间,一个有你在的地方。嗨,这里是狐狸~~今天是2021年12月28日,距离2022年只剩3天啦,大家都准备怎么跨年呢,我估计要在公司跨年了,唉,生活不易啊,好了,废话不多说,2022年快到了,同学们也快放寒假了,今天开始我会一步一步的告诉大家怎么去学习编程,让大家可以充实的过一个寒假。编程语言概述编程语言说到语言我都会想到在生活中用到的自然语言,如中文,英语等自然语言自然语言它是人和人交流不可缺少的工具而编程语言是和计算机交流

mysql 连接错误 2058 Plugin caching_sha2_password could not be loaded_雪雨听风的博客-程序员宅基地

mysql 连接错误 2058 Plugin caching_sha2_password could not be loaded1、修改密码过期ALTER USER'root'@'localhost' IDENTIFIED BY 'root' PASSWORD EXPIRE NEVER;2、重新修改密码ALTER USER'root'@'%' IDENTIFIED WITH mysql_native_password BY 'root';3、刷新权限(不做可能无法生效)FLUSH PRIVILE

c语言中的下标,c语言中数组的下标从什么入手下手?_后端开发_PCIM Asia的博客-程序员宅基地

c言语中数组的下标从0入手下手。由于假如数组元素下标从1入手下手,每次盘算地点时,须要多做一次减法操纵。所以,为了进步效力,C言语数组元素下标从0入手下手。 c言语中数组的下标从0入手下手。数组中的各元素的存储是有先后次序的,它们在内存中根据这个先后次序一连寄存在一起。数组元素用全部数组的名字和它本身在数组中的次序位置来示意。比方:a[0]就示意名字为a的数组中的第一个元素。那末,C言语中数组的元...

基于事件驱动机制,在Service Mesh中进行消息传递的探讨_BoCloud博云的博客-程序员宅基地

翻译 | 宋松原文 |https://www.infoq.com/articles/service-mesh-event-driven-messaging关键点 当前流行的Service Mesh实现(Istio,Linkerd,Consul Connect等)仅满足微服务之间的请求 - 响应式同步通信。 为了推进和采用Service Mesh,我们认为支持事件驱动...

推荐文章

热门文章

相关标签