我的编程空间,编程开发者的网络收藏夹
学习永远不晚

数据可视化——用python绘制气泡图、三维散点图、多重柱形图案例

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

数据可视化——用python绘制气泡图、三维散点图、多重柱形图案例

目录

前言

一、气泡图的绘制

1、什么是气泡图?他适用于什么数据?

2、图形效果展示

3、导入需要用到的库

4、读取要分析的数据

5、检查数据是否有问题

6、将要对比数据提取出来

7、画图

二、三维散点图的绘制

1、什么是三维散点图?

2、导入需要用到的数据库

3、画图

三、多重柱形图的绘制

1、什么是多重柱形图?

2、效果图展示

3、导入需要用到的库

4、读取要分析的数据

5、分组聚合

6、遍历

7、画图

四、总结


前言

气泡图与散点图十分相似,它们总称为数据关系型图,散点图主要分为二维散点图与三维散点图、常用于反映数值之间的相对位置,而气泡图常用于展示三维甚至四维变量的关系,由一个个像气泡元素组成。而多重柱形图可以用来展现某个分类下多个数据的对比。接下来让我们一起来看看气泡图和、三维散点图和多重柱形图的绘制。本人也是一位正在学习中的新手,了解有限,有什么错误的地方大家多多指点。

一、气泡图的绘制

1、什么是气泡图?他适用于什么数据?

气泡图的其中一条变量的表现形式是体现在气泡的大小或颜色深浅上,如果一个数据集中包含非常多的点,那么散点图可以将这些数据对比的结果一目了然,是比较适用的。

2、图形效果展示

3、导入需要用到的库

import pandas as pdimport pyecharts.options as optsfrom pyecharts.charts import Scatter

在这里我们导入pandas库,pandas库是数据分析中非常常用的库,用于读取csv、xls等文件中的数据。

从pyecharts导入options,在生成图表时,可以根据实际情况设置这些选项更改外观

4、读取要分析的数据

下面以航空公司数据为例,分析年龄、飞行次数、飞行间隔之间的关系

data = pd.read_excel(r'航空公司数据-剔除空年龄.xlsx')

 在这里,我读取的是xls文件,如果你需要读取的文件为csv,那你可以参照这个写法:

                data = pd.read_csv(r'航空公司数据-剔除空年龄.csv',encoding = 'gbk')

注意:当目标文件和当前文件不在同级目录时,读取数据时可以考虑使用绝对路径或者在相对路径前加上相对路径特殊符号,如:../、../../

5、检查数据是否有问题

data_select = data.loc[:100,['年龄','飞行次数','最大乘机时间间隔']]data_select.isnull().sum()

                                         

loc[]切片:使用.loc[ ]第一个参数是行索引,第二个参数是列索引

pandas库中有一个isnull()函数,它可以用来判断缺失值

其中:isnull().sum()可以用于查询每列缺失值的数量

           isnull().any()可以用于判断哪些列包含缺失值,并且在缺失值返回True,反之False。

注意:如果数据有异常值也需要对异常值进行处理

6、将要对比数据提取出来

x = data_select['飞行次数'].tolist()y = data_select['最大乘机时间间隔'].tolist()z = data_select['年龄'].tolist()
x

.tolist()函数可以将数组或矩阵转换为列表,它的返回值以list的形式出现

7、画图

color_range = ['#ffcc00','#ff7f00','#ff0000']c = (    Scatter(init_opts=opts.InitOpts(width="800px", height="400px"))    .set_global_opts(        xaxis_opts=opts.AxisOpts(            type_="value",             splitline_opts=opts.SplitLineOpts(is_show=True),            name = '飞行次数', # 坐标轴名称            name_location = 'center',            name_gap = 30        ),        yaxis_opts=opts.AxisOpts(            type_="value",            splitline_opts=opts.SplitLineOpts(is_show=True),            name = '最大乘机时间间隔',            name_location = 'center',            name_gap = 30        ),        legend_opts = opts.LegendOpts(pos_top='5%'), # 图示位置    ))for i,j,q in zip(x,y,z):    c.add_xaxis(xaxis_data = [i])     c.add_yaxis(        series_name='气泡大小:年龄', # 巧用序列名称和图示来提示气泡大小的含义        y_axis = [j],        symbol_size = q//3, # 根据年龄数据定义合适的气泡大小        color = '#ff8080'    )c.set_series_opts(label_opts=opts.LabelOpts(is_show=False))c.render_notebook()

在这里应用了matplotlib模块中的scatter函数绘制了气泡图,气泡的大小代表年龄

xAxis代表坐标系中的x轴 ,yAxis代表坐标系中的y轴

type:坐标轴类型,'value'—数据轴、'time'—时间轴、'log'—对数轴、'category'—类目轴

name:坐标轴名称

nameLocation:坐标轴名称的位置

for in zip():并行遍历,zip()函数可以将多个序列打包在一起,然后同时遍历它们

label_opts:标签配置项

color:配置颜色

is_show:是否显示标签(True 、Flase)

render_notebook:直接调用render_notebook方法可以随时随地的渲染图表

还有更多的配置项可以查看官网文档

二、三维散点图的绘制


1、什么是三维散点图?

三维散点图可以反映三个数值之间的关系,他是一个立体的图形,我们可以理解为将气泡图的三维数据绘制到三维坐标系,就形成了三维散点图。

在这里,用的数据与气泡图的一样,以航空公司数据为例,分析年龄、飞行次数、飞行间隔之间的关系,所以不再展示数据的处理

2、导入需要用到的数据库

import pyecharts.options as optsfrom pyecharts.charts import Scatter3D

3、画图

c = (    Scatter3D()    .add(        '',        data = [[i,j,k] for i,j,k in zip(x,y,z)], # 数据:二维数组        xaxis3d_opts=opts.Axis3DOpts( # x轴配置            name='飞行次数',            type_="value",        ),        yaxis3d_opts=opts.Axis3DOpts( # y轴配置            name='最大乘机时间间隔',            type_="value",        ),        zaxis3d_opts=opts.Axis3DOpts( # z轴配置            name='年龄',            type_="value",        ),    )    .set_global_opts(        visualmap_opts=opts.VisualMapOpts(                max_= max(z),                range_color=[                    "#1710c0",                    "#0b9df0",                    "#00fea8",                    "#00ff0d",                    "#f5f811",                    "#f09a09",                    "#fe0300",                ],        ),    ))c.render_notebook()

三维散点图的第三条数据展现在z轴上,通过对z轴的数据进行颜色设置,展现出年龄的大小,与气泡图不同,气泡图是表现在气泡的颜色和大小上。

name:坐标轴名称

type:坐标轴类型,'value'—数据轴、'time'—时间轴、'log'—对数轴、'category'—类目轴

color:配置颜色

render_notebook:直接调用render_notebook方法可以随时随地的渲染图表

还有更多的配置项可以查看官网文档:

相关配置icon-default.png?t=N5K3https://gallery.pyecharts.org/

三、多重柱形图的绘制

1、什么是多重柱形图?

多组柱形图也叫作簇状柱形图,它是用来展现某个分类下多个数据的对比。

2、效果图展示

3、导入需要用到的库

import pandas as pdfrom pyecharts import options as optsfrom pyecharts.charts import Bar

4、读取要分析的数据

data_user = pd.read_excel(r'新用户表.xlsx')

5、分组聚合

result = data_user.groupby(by=['性别','城市'])['姓名'].count()result_man = result['男']result_woman = result['女']
result_woman

对数据内部进行分组处理时,可以通过pandas下的groupby()函数来解决。

count() 方法用于统计字符串里某个字符或子字符串出现的次数。

result()通常用于存储函数或方法的返回值

6、遍历

[i for i in result_man.index]y1 = result_man.tolist()y2 = result_woman.tolist()

用for i in x的所有遍历结果i来组成一个新的列表

tolist()可以将数组作为(可能是嵌套的)列表返回。

7、画图

# 数据类型的转换x = [i for i in result_man.index] # 转换成list对象y1 = result_man.tolist()y2 = result_woman.tolist()bar = (    Bar(        init_opts=opts.InitOpts(width='600px',height='400px') # 初始化配置项       )    .add_xaxis(x)    .add_yaxis("男",y1,color = 'pink')    .add_yaxis("女", # 图示名称               y2, # 数据               color = 'skyblue',               gap='0%' # 柱子之间的间隔              )#     .set_colors([ "#00ff00", "#ffcc00"])  # 另一种颜色设置方法    .set_global_opts(title_opts=opts.TitleOpts(title="Bar-基本示例",                    subtitle="我是副标题"                  )                    ))

从pyecharts.charts中调用Bar柱状图

add_xaxis() 添加x轴坐标

add_yaxis() 添加y轴坐标

还有更多的配置项可以查看官网文档:

相关配置icon-default.png?t=N5K3https://gallery.pyecharts.org/

四、总结

在这里简单的介绍了气泡图、三维散点图和多重柱形图,总的来说,通过数据可视化可以很直观的了解多数据集,增加了数据展示的可读性和信息量,今天的的分享就到这里了,希望能够给你带来帮助。

来源地址:https://blog.csdn.net/m0_72642657/article/details/131170243

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

数据可视化——用python绘制气泡图、三维散点图、多重柱形图案例

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

怎么使用python可视化分析绘制散点图和边界气泡图

这篇文章主要介绍“怎么使用python可视化分析绘制散点图和边界气泡图”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“怎么使用python可视化分析绘制散点图和边界气泡图”文章能帮助大家解决问题。一、
2023-07-02

编程热搜

  • Python 学习之路 - Python
    一、安装Python34Windows在Python官网(https://www.python.org/downloads/)下载安装包并安装。Python的默认安装路径是:C:\Python34配置环境变量:【右键计算机】--》【属性】-
    Python 学习之路 - Python
  • chatgpt的中文全称是什么
    chatgpt的中文全称是生成型预训练变换模型。ChatGPT是什么ChatGPT是美国人工智能研究实验室OpenAI开发的一种全新聊天机器人模型,它能够通过学习和理解人类的语言来进行对话,还能根据聊天的上下文进行互动,并协助人类完成一系列
    chatgpt的中文全称是什么
  • C/C++中extern函数使用详解
  • C/C++可变参数的使用
    可变参数的使用方法远远不止以下几种,不过在C,C++中使用可变参数时要小心,在使用printf()等函数时传入的参数个数一定不能比前面的格式化字符串中的’%’符号个数少,否则会产生访问越界,运气不好的话还会导致程序崩溃
    C/C++可变参数的使用
  • css样式文件该放在哪里
  • php中数组下标必须是连续的吗
  • Python 3 教程
    Python 3 教程 Python 的 3.0 版本,常被称为 Python 3000,或简称 Py3k。相对于 Python 的早期版本,这是一个较大的升级。为了不带入过多的累赘,Python 3.0 在设计的时候没有考虑向下兼容。 Python
    Python 3 教程
  • Python pip包管理
    一、前言    在Python中, 安装第三方模块是通过 setuptools 这个工具完成的。 Python有两个封装了 setuptools的包管理工具: easy_install  和  pip , 目前官方推荐使用 pip。    
    Python pip包管理
  • ubuntu如何重新编译内核
  • 改善Java代码之慎用java动态编译

目录