数据可视化之多表显示

多表显示subplot(),subplots()
#
使用 pyplot 中的 subplot() subplots() 方法来绘制多个子图


# 导入库,和调用中文
import matplotlib.pyplot as plt
import numpy as np

# 作用:解决坐标轴为负时 负号显示为方框的问题
# axes:坐标轴
# Unicode:编码标准
# minus:负号,减号
plt.rcParams['axes.unicode_minus'] = False
# 解决图上汉字显示为方框的问题 在图上显示汉字
plt.rcParams['font.family'] = ['SimHei']

# subplot()函数使用
#  subplot(numRows,numCols,plotNum)
#  numRows
1numCols 2
就是将图表绘制成 1x2 的图片区域, 对应的坐标为:
#               (1, 1), (1, 2)
# plotNum
1, 表示的坐标为(1, 1), 即第一行第一列的子图。
# plotNum 2, 表示的坐标为(1, 2), 即第一行第二列的子图。
#
#
#
准备数据

# plot 1:
xpoints = np.array([0, 6])
ypoints = np.array([
0, 100])

# plot 2:
x = np.array([1, 2, 3, 4])
y = np.array([
1, 4, 9, 16])

# 准备画布
plt.subplot(2,2,1)
# 绘图
plt.plot(xpoints,ypoints)
plt.title(
'图一')
plt.subplot(
2,2,3)
plt.plot(x,y)
plt.title(
"图二")

# 总的大标题
plt.suptitle("多张图绘制")

# matplotlib.pyplot.subplots(
#           nrows=1,        //
默认为1,设置图表的的行数
#           ncols=1,        //默认为1,设置图标列数
#           *,
#           sharex=False,   //
设置x轴是否共享,默认不共享
#                             可设置为 'none''all''row' 'col'
#           sharey=False,   //设置y轴是否共享,默认不共享。
#                             False none 每个子图的 x 轴或 y 轴都是独立的,
#                             True 'all':所有子图共享 x 轴或 y 轴,
#                             'row' 设置每个子图行共享一个 x y 轴,
#                             'col':设置每个子图列共享一个 x y 轴。
#           squeeze=True,
#           subplot_kw=None,   //
可选,字典类型。
#                               把字典的关键字传递给 add_subplot() 来创建每个子图。
#           gridspec_kw=None,   //可选,字典类型。
#                               把字典的关键字传递给 GridSpec 构造函数
#                               创建子图放在网格里(grid)
#           **fig_kw)        /把详细的关键字参数传给 figure() 函数
#
#
准备数据2
np.linspace(start = 0, stop = 100, num = 5) # 平均分布着的数据
x = np.linspace(0,2*np.pi,50)
y = np.sin(x)


# 原图
plt.figure()
plt.plot(x,y)

yticks =
range(-2,2,1)
plt.yticks(yticks)
plt.xlabel(
'x')
plt.ylabel(
'y')
plt.grid(
linestyle='--',alpha=0.5)
plt.title(
'原图')


# 创建一个画像和一个子图
figure1,plot1 = plt.subplots()
plot1.plot(x,y)
plot1.set_title(
'一个画像和一个子图')

# 创建一个画像,两个子图,并共享y
figure2,(plot1,plot2) = plt.subplots(1,2,sharey=True)
plot1.plot(x,y)           
# 折线图
plot1.set_title('子图1')   # 子图1的标题
plot1.grid(linestyle='-',alpha = 0.5)   # 网格线
plot2.scatter(x,y)         # 散点图
plot2.set_title('子图2')   # 子图1的标题
plot2.grid(linestyle='-',alpha = 0.5)   # 网格线
plt.suptitle('2个子图')     总标题

# 在调用subplot()创建子图时通过设置projection='polar',
#
便可创建一个极坐标子图,
# 然后调用plot()在极坐标子图中绘图。
fig=plt.figure()
ax1 = plt.subplot(
1,2,1, projection='polar'# 极坐标轴
ax2 = plt.subplot(122)      # 数据类型相同时,可以省略
fig.subplots_adjust(wspace=0.4) # 设置子图间的间距,为子图宽度的40%
theta=np.arange(0,2*np.pi,0.02)
ax1.plot(theta,theta/
6,'-.',lw=2)
ax2.plot(theta,theta/
6,'-.',lw=2)

# 创建四个子图
fig, axs = plt.subplots(2, 2, subplot_kw=dict(projection="polar"))
axs[
0, 0].plot(x, y)
axs[
1, 1].scatter(x, y)

# 共享 x
fig,axs = plt.subplots(2, 2, sharex='col')
axs[
0, 0].plot(x, y)
axs[
1, 1].scatter(x, y)
# 共享 y
fig2,axs2 = plt.subplots(2, 2, sharey='row')
axs2[
0, 0].plot(x, y)
axs2[
1, 1].scatter(x, y)
# 共享 x 轴和 y
fig3,axs3 = plt.subplots(2, 2, sharex='all', sharey='all')
axs3[
0, 0].plot(x, y)
axs3[
1, 1].scatter(x, y)
# 这个也是共享 x 轴和 y
fig4,ax = plt.subplots(2, 2, num=10,sharex=True, sharey=True)
# 创建标识为 10 的图,已经存在的则删除
fig5, axs= plt.subplots(2,2,num=10, clear=True)

# 展示
plt.show(block=True)

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/783020.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

使用python实现i茅台自动预约

使用python实现i茅台自动预约[仅限于学习,不可商用] 运行: 直接运行 imtApi.py 打包:切换到imt脚本目录,执行打包命令: pyinstaller --onefile imtApi.py这个应用程序可以帮助你进行茅台自动化配置。以下是一些使用说明: 平台注册账号(可用i茅台)不用登录,你可以进行…

Linux的VirtualBox中USB设备无法选择USB3.0怎么办?

在VirtualBox中,如果遇到USB设备无法选择 USB 3.0 的问题,可以尝试按照以下步骤来解决: 确保VirtualBox版本支持USB 3.0:首先,你需要确认你的VirtualBox版本是否支持USB 3.0。一些较旧的版本可能不支持,因此…

一篇搞定AVL树+旋转【附图详解旋转思想】

🎉个人名片: 🐼作者简介:一名乐于分享在学习道路上收获的大二在校生 🙈个人主页🎉:GOTXX 🐼个人WeChat:ILXOXVJE 🐼本文由GOTXX原创,首发CSDN&…

【Effective Web】页面优化

页面优化 页面渲染流程 JavaScript 》 Style 》 Layout 》 Paint 》 Composite 首先js做了一些逻辑,触发了样式变化,style计算好这些变化后,把影响的dom元素进行重新布局(layout),再画到画布中(Paint&am…

半导体工艺技术

完整内容点击:【半导体工艺技术】

将jupyter notebook文件导出为pdf(简单有效)

1.打开jupyter notebook笔记: 2.点击file->print Preview 3.在新打开的页面右键打印 4.另存为PDF 5.保存即可 6.pdf效果 (可能有少部分图片显示不了) 网上也有其他方法,比如将其转换为.tex再转为PDF等,但个人觉…

面试前端八股文十问十答第四期

面试前端八股文十问十答第四期 作者:程序员小白条,个人博客 相信看了本文后,对你的面试是有一定帮助的!关注专栏后就能收到持续更新! ⭐点赞⭐收藏⭐不迷路!⭐ 1)var、let 和 const 的区别&am…

ubuntu 中安装docker

1 资源地址 进入ubuntu官网下载Ubuntu23.04的版本的镜像 2 安装ubuntu 这里选择再Vmware上安装Ubuntu23.04.6 创建一个虚拟机,下一步下一步 注意虚拟机配置网络桥接,CD/DVD选择本地的镜像地址 开启此虚拟机,下一步下一步等待镜像安装。 3…

spring boot的小数位丢失.00 或者.0

1、背景 在使用spring boot时,前端的界面展示的数据是2 ,在数据库中存储的是小数。但是导出Excel的时候数据是 2.00 。奇了怪了为啥会不一样,数据都是一样的没有做过处理。 2、排查问题 经过层层的debug 发现数据库返回的数据是2.00&#x…

数据可视化-ECharts Html项目实战(8)

在之前的文章中,我们学习了如何设置散点图涟漪效果与仪表盘动态指针效果。想了解的朋友可以查看这篇文章。同时,希望我的文章能帮助到你,如果觉得我的文章写的不错,请留下你宝贵的点赞,谢谢 今天的文章,会…

【c++】类和对象(六)深入了解隐式类型转换

🔥个人主页:Quitecoder 🔥专栏:c笔记仓 朋友们大家好,本篇文章我们来到初始化列表,隐式类型转换以及explicit的内容 目录 1.初始化列表1.1构造函数体赋值1.2初始化列表1.2.1隐式类型转换与复制初始化 1.3e…

python基础——文件操作【文件编码、文件的打开与关闭操作、文件读写操作】

📝前言: 这篇文章主要讲解一下python中对于文件的基础操作: 1,文件编码 2,文件的打开与关闭操作 3,文件读写操作 🎬个人简介:努力学习ing 📋个人专栏:C语言入…

04 | Swoole 源码分析之 epoll 多路复用模块

首发原文链接:Swoole 源码分析之 epoll 多路复用模块 大家好,我是码农先森。 引言 在传统的IO模型中,每个IO操作都需要创建一个单独的线程或进程来处理,这样的操作会导致系统资源的大量消耗和管理开销。 而IO多路复用技术通过…

C++教学——从入门到精通 3.计数器

平时我们那游戏的时候,一般都会有积分的积累,这是就用到了计数器 那么我一天写一篇文章,若写了七天,共有多少篇? #include"bits/stdc.h" using namespace std; int main(){int i0;ii1;//i1;ii1;ii1;ii1;ii…

OceanBase OBCA 数据库认证专员考证视频

培训概述 OceanBase 认证是 OceanBase 官方推出的唯一人才能力认证体系,代表了阿里巴巴及蚂蚁集团官方对考生关于 OceanBase 技术能力的认可,旨在帮助考生更好地学习 OceanBase 数据库产品,早日融入 OceanBase 技术生态体系,通过由…

聚簇索引和非聚簇索引

磁盘文件 Innodb存储引擎在磁盘上的文件是以.idb结尾的文件,它存放的是表索引数据。这其实就是聚簇索引。 而Myisam存储引擎在磁盘上的文件是以.MYD结尾的表数据 和.MYI结尾的表索引,这其实就是非聚簇索引。所以区别之一是是否把索引和数据放在了一起。…

MYSQL——索引概念索引结构

索引 索引是帮助数据库高效获取数据的排好序的数据结构。 有无索引时,查询的区别 主要区别在于查询速度和系统资源的消耗。 查询速度: 在没有索引的情况下,数据库需要对表中的所有记录进行扫描,以找到符合查询条件的记录&#…

专升本-物联网

物联网(IOT,Internet of things) 体系结构: 感知层(感知执行层) 网络层 应用层 基本特征: 全面感知 可靠传输 智能处理 作用: 信息采集、转换、收集 信息传递和处理 数据…

Doris实践——票务平台的实时数仓建设

目录 前言 一、引入 Doris原因 二、基于Doris搭建数据平台 2.1 构建实时数仓 2.2 Flink CDC全库同步 三、基于Doris进行OLAP报表开发 四、未来规划 原文大佬介绍的这篇票务平台的实时数仓建设有借鉴意义,现摘抄下来用作沉淀学习。如有侵权,请告知…

如何在Mac系统上编写html代码,Mac系统上html环境配置

目录 前言1.代码编辑器:VScode1.1下载与安装1.2简单的工具配置2.测试用浏览器:Chroem2.1下载与安装3.JavaScript运行环境:node.js3.1下载与安装4.git工具:sourceTree+gitee4.1下载与安装结尾前言 这是一个面向新手的MAC系统Html编写的环境的说明。 相关搜索内容已经被垃圾…