pyplot 中的等宽绘图大小,同时保持纵横比相等

2024-06-19

我想让两个图具有相同的宽度,但是生成的代码缩小了 imshow 图。

xx = np.linspace(0.0,255.5,512)
yy = np.linspace(0.0,255.5,512)
Func = np.random.rand(len(xx),len(yy))

f, axarr = plt.subplots(2,1)
f.tight_layout()

im = axarr[0].imshow(Func, cmap = 'jet', interpolation = 'lanczos',origin = 'lower')
pos = axarr[0].get_position()
colorbarpos = [pos.x0+1.05*pos.width,pos.y0,0.02,pos.height]
cbar_ax = f.add_axes(colorbarpos)
cbar = f.colorbar(im,cax=cbar_ax)

axarr[1].plot(xx,Func[:,255],yy,Func[255,:])

plt.show()
plt.close('all')

编辑:我还想防止 imshow 的绘图看起来被拉伸(本质上,我需要适当拉伸宽度和长度,以便长宽比仍然相等)。


一些选项:

A. `aspect="auto"

在 imshow 绘图上使用 `aspect="auto"

    plt.imshow(...,  aspect="auto")

B.调整图形边距

调整图形尺寸的图形边距,使下轴与 imshow 图具有相同的尺寸,例如

    plt.subplots_adjust(left=0.35, right=0.65)

C.使用分隔线

您可以使用make_axes_locatable功能来自mpl_toolkits.axes_grid1划分图像轴,为其他轴腾出空间。

import matplotlib.pyplot as plt
from mpl_toolkits.axes_grid1 import make_axes_locatable
import numpy as np

xx = np.linspace(0.0,255.5,512)
yy = np.linspace(0.0,255.5,512)
Func = np.random.rand(len(xx),len(yy))

fig, ax = plt.subplots(figsize=(4,5))

im = ax.imshow(Func, cmap = 'jet', interpolation = 'lanczos',origin = 'lower')

divider = make_axes_locatable(ax)
ax2 = divider.append_axes("bottom", size=0.8, pad=0.3)
cax = divider.append_axes("right", size=0.08, pad=0.1)

ax2.plot(xx,Func[:,255],yy,Func[255,:])
cbar = fig.colorbar(im,cax=cax)

plt.show()
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

pyplot 中的等宽绘图大小,同时保持纵横比相等 的相关文章

  • 无法将 matplotlib 导入 Python 3

    我正在尝试自学编程 但在下载基本教程所需的模块时不断遇到问题 我最近的尝试是获得matplotlib模块到我的 Python 3 环境中 我尝试了很多不同的安装包以及在互联网上找到的很多建议 但我不记得最初是如何获得该模块的 但安装过程似乎
  • 如何绘制多个子图

    我对这段代码的工作原理有点困惑 fig axes plt subplots nrows 2 ncols 2 plt show 在这种情况下 图轴如何工作 它有什么作用 另外为什么这不能做同样的事情 fig plt figure axes f
  • 使用 subplots 和 colorbar 与 matplotlib 将 x 轴与 sharex 对齐

    我正在尝试使用 pyplot 创建一组具有共享 x 轴的子图 当图表很简单并且所有 x 轴都对齐得很好时 这一切都很好 但是 当我包含包含颜色条的子图时 这会压缩该特定子图的宽度以包含颜色条 从而导致子图不再共享 x 轴 我在网上搜索过 但
  • AudioSet 和 Tensorflow 理解

    With AudioSet https research google com audioset index html发布并为那些进行合理研究分析的人提供了一个全新的研究领域 最近几天我一直在努力深入研究如何分析和解码这些数据 数据在 tf
  • 过滤长时间序列Python的最有效方法

    我有一个很大的时间序列 比如 1e10 它是记录神经活动 即电压 的结果 在进行进一步分析之前 我想对 300 Hz 到 7000 Hz 之间的数据进行带通滤波 下面 我发布了我设计的巴特沃斯滤波器的代码 如何使这个过滤器更快 运行时间太长
  • 在seaborn kdeplot中设置置信度

    我对seaborn完全陌生 所以如果这是一个简单的问题 我深表歉意 但我在文档中找不到关于如何在kdeplot中控制n levels绘制的级别的描述 这是一个例子 import seaborn as sns import numpy as
  • 在循环中有效地使用 matplotlib 的箭袋

    我使用循环在底图上生成矢量场 如下所示 for i in range 365 barbs m quiver x y u i v i scale 100 plt draw barbs remove 该程序每次循环都会占用更多的内存 有办法解决
  • ValueError: X.shape[1] = 2 应等于 13,即训练时的特征数量

    我试图通过使用 scikit learn 的 SVM 文档分类器来预测肺癌数据 我使用以下代码但出现一些错误 我用过matplotlib pyplot as plt用于数据图但出现错误 在这里 我明智地使用了肺癌数据风险因素 输入文件 GE
  • Python fuzzywuzzy 错误字符串或缓冲区期望

    我正在使用 fuzzywuzzy 在公司名称 csv 中查找近似匹配项 我正在将手动匹配的字符串与不匹配的字符串进行比较 希望找到一些有用的邻近匹配 但是 我在 fuzzywuzzy 中遇到了字符串或缓冲区错误 我的代码是 from fuz
  • 跨多个模块的 Python 日志记录

    我正在尝试将日志记录 到控制台而不是文件 添加到我已经工作了一段时间的代码中 阅读了一些内容后 我有一个我认为应该可行的模式 但我不太确定我哪里出错了 我有以下三个文件 显然是简化的 控制器 py import my module impo
  • 使用Python打印最长的字母子串,对于平局,打印第一个子串[重复]

    这个问题在这里已经有答案了 假设 s 是一串小写字符 编写一个程序 打印 s 中字母按字母顺序出现的最长子串 例如 如果 s azcbobobegghakl 那么您的程序应该打印 按字母顺序排列的最长子串是 beggh 如果是平局 则打印第
  • 使用两个不同颜色的数据集创建 matplotlib 热图

    我目前有两个大数据集 我想对它们进行比较 我把它们分开 一个是红色的 一个是蓝色的 但是我想并排显示红色和蓝色 我该怎么办 我当前的代码是 column labels list heatmap ylabels row labels list
  • Python:通过xpath获取html表数据

    我觉得从 html 表中提取数据非常困难 并且需要为每个站点进行自定义构建 我非常希望在这里被证明是错误的 是否有一种简单的 Pythonic 方法可以通过使用感兴趣的表的 url 和 xpath 从网站中提取字符串和数字 Example
  • _tkinter.TclError:新 OS X Mavericks 没有显示名称,也没有 $DISPLAY 环境变量

    这是我的第一篇文章 所以请原谅 我正在尝试使用 matplotlib 创建动画 直到几天前我都可以完美地做到这一点 直到我升级到 OS X Mavericks 从此一切都崩溃了 请注意 以下代码适用于 OS X Lion 突然 我在 Mav
  • 从图中删除颜色条

    这应该很容易 但我很难做到 基本上 我在 matplotlib 中有一个子图 每次调用函数时我都会在其中绘制十六进制图 但是每次调用该函数时我都会得到一个新的颜色条 所以我真正想做的是更新颜色条 不幸的是 这似乎不起作用 因为颜色条附加的对
  • 装饰外部(库)函数的正确方法是什么?

    我在代码中多次使用库函数来测试通过 失败条件并相应地执行不同的代码 但由于某种原因 它找到的结果没有返回值 我想用装饰器添加它 以便我可以在代码中调用它 鉴于我无法编辑源文件 正确的方法是什么 我应该做这样的事情 def test pass
  • matplotlib 孵化 fill_ Between 没有边缘?

    我有一个想要孵化的区域 该区域与现有的虚线绘图线 相同颜色 接壤 但是 当我使用fill between要孵化的区域周围也有一个边界 该边框似乎与创建阴影线的线条共享属性 因此我无法将边缘颜色设置为 无 或将线条样式设置为 因为阴影线也会受
  • TypeError: super() take at least 1 argument (0给定)错误特定于任何Python版本?

    我收到这个错误 类型错误 super 至少需要 1 个参数 给定 0 个 在 python2 7 11 上使用此代码 class Foo object def init self pass class Bar Foo def init se
  • 什么时候使用 zip 代替 izip 更好?

    什么时候使用比较好zip https docs python org 2 library functions html zip代替itertools izip https docs python org 2 library itertool
  • VSCode无法切换matplotlib后端:ImportError:无法加载需要“qt5”交互框架的后端“Qt5Agg”

    我只想通过在 VSCode 中运行 Python 来进行绘图 但结果失败了 我无法将后端从 agg 切换到 Qt5Agg 但是 我可以在 VSCode 的终端中轻松执行此操作 VSCode集成终端中的问题如下所示 我尝试了各种解决方案但失败

随机推荐

  • 从后台恢复后,Flutter GoogleMap 为空白

    我遇到以下问题 我的 Flutter 应用程序使用 GoogleMap 地图最初加载得很好 但是 如果我将应用程序置于后台并稍后恢复 地图将保持空白 Google 徽标仍然显示 就像未指定 API 密钥时发生的情况一样 我的多边形叠加层也不
  • 从嵌套列表创建数组时抑制 Numpy 中的科学记数法

    我有一个嵌套的 Python 列表 如下所示 my list 3 74 5162 13683628846 64 12783387559 86 1 81 9 55 116 189688622 37 260332262 0 1 97 2 2 7
  • 将 EditText 设置为带有整数的货币

    全部 我有一个TextWatcher格式化一个EditText货币格式 private String current public void onTextChanged CharSequence s int start int before
  • Rhino 和 Spidermonkey JavaScript 引擎有什么区别?

    我第一次开始学习 Javascript 但是一开始我就坚持了两个可能的选择 Rhino 和 Spidermonkey 请您告诉我什么是一个 什么是另一个 以便我可以轻松地为自己选择适合我需要的最佳选择 如果这对您来说更容易 您可以列出两个
  • 如何在 Process.Start 上使用 Microsoft Fakes 程序集

    我想嘲笑系统 诊断 进程 启动调用 所以我为System集会 问题是Start是一个静态方法系统 诊断 过程所以我没有得到一个能够为 Start 方法挂钩委托的垫片 这样做的正确方法是什么 因此 首先您需要为 Process 类生成 Shi
  • 图像下方不需要的边距

    我有一个图像和一个 div 我想将其放置在其下方 这是小提琴 http jsfiddle net d3Mne 1 http jsfiddle net d3Mne 1 问题是两者之间存在差距 此下边距仅出现在图像中 有什么办法可以去除吗 Se
  • Excel 接受一些字符,而 OpenXml 有错误

    我有一个字符串 我想使用 C 中的 openxml 组件将其导出到 Excel 文件 我的文本有 u001f 字符 而 openxml 对此字符有错误 错误文本 十六进制值 0x1f 是无效字符 我将该测试直接复制到 Excel 中 没有问
  • 部分预处理 C 或 C++ 源文件?

    有没有办法部分预处理C或者C 源文件 我所说的 部分预处理 是指扩展一些但不是全部的 include 指令 例如 我想扩展 includes 指向我的项目标头 但不扩展 includes 指向其他库的标头 我尝试通过运行来做到这一点gcc
  • Electron webContentsexecuteJavaScript:无法在 loadURL 上第二个执行脚本

    我正在测试 Electron 特别是使用executeJavaScript 我的项目使用 POST 请求登录网站 然后执行一些工作并使用同一会话加载第二个 URL 在第二个 URL 中 我需要执行 JS 但我不确定我做错了什么 在此示例中
  • 需要按天分割日期时间范围

    我有一个需要根据日期时间拆分的表 输入表 ID Start End A 2019 03 04 23 18 04 2019 03 04 23 21 25 A 2019 03 04 23 45 05 2019 03 05 00 15 14 所需
  • 在哪里实现 Swift 协议?

    在 Swift 中实现协议一致性时 我有两个选择 具有相同的最终结果 在类中实现协议 也就是说 在类定义的顶部声明一致性 并将实现放在类体内 或者 在扩展中实现协议 也就是说 完全在类之外编写符合协议的代码 这是一个例子 public cl
  • 如何定义与更高类型类型(类型构造函数)绑定的上下文

    我尝试过以下方法 def test Option T Ordering value1 Option T value2 Option T val e implicitly Ordering Option T compare value1 va
  • 在 Delphi 中的 SOAP 标头中发送简单字符串

    我需要发送这样的东西
  • 为什么这个符号链接创建了两个实例

    我有一个用于我的点文件的安装脚本 我用来创建一个目录到我的主文件夹的符号链接 这些链接执行得很好 但创建了第二个符号链接 我无法解释为什么 项目中的文件夹结构如下所示 install sh scripts shell sh shell in
  • AWS ELB 和 GoDaddy 域正在运行

    我已在 goDaddy com 中注册了一个域 并希望将流量发送到 AWS Route53 我创建了一个 ELB 我执行了以下步骤 在 Route 53 中 为我的 godaddy 域名创建一个托管区域 这反过来又为我提供了一条包含 4 个
  • 找不到 OAuth2 参数

    我正在尝试使用 OAuth 2 0 来授权 google docs API 根据谷歌给出的例子https developers google com google apps documents list authorizing reques
  • Python Scrapy:“runspider”和“crawl”命令有什么区别?

    有人可以解释一下两者之间的区别吗运行蜘蛛 and crawl命令 应该在什么情况下使用它们 在命令中 scrapy crawl options
  • 不带 GROUP BY 的聚合查询

    这个查询似乎在我的旧机器上完美运行 但是 在我的 MySQL 5 7 14 和 PHP 5 6 25 的新机器上 它会抛出错误 致命错误 未捕获异常 PDOException 并带有消息 SQLSTATE 42000 语法错误或访问冲突 1
  • Matplotlib xlabel Arial 格式,其中一个单词为斜体

    我想创建一个 matplotlib 图形 其 x 轴标签采用 Arial 字体 并且有一个斜体字 我可以用乳胶字体创建带有 x 轴标签的图形 其中一个单词为斜体 我还可以在 Arial 中创建带有 x 轴标签的图形 只要我将整个标签设置为斜
  • pyplot 中的等宽绘图大小,同时保持纵横比相等

    我想让两个图具有相同的宽度 但是生成的代码缩小了 imshow 图 xx np linspace 0 0 255 5 512 yy np linspace 0 0 255 5 512 Func np random rand len xx l