首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >pyplot imshow()返回带有多个子图的循环

pyplot imshow()返回带有多个子图的循环
EN

Stack Overflow用户
提问于 2020-07-18 05:08:43
回答 1查看 84关注 0票数 0
代码语言:javascript
复制
data.shape
(800, 49, 6)

我想在一个循环中做到这一点,但我也想控制单独的颜色条。如何将ax[].imshow()的返回值赋值给以后可以引用的数组?

代码语言:javascript
复制
# 6 plots in one row
fig,ax = plt.subplots(1,6)  
im0 = ax[0].imshow(data[:,:,0])
im1 = ax[1].imshow(data[:,:,1])
im2 = ax[2].imshow(data[:,:,2])
im3 = ax[3].imshow(data[:,:,3])
im4 = ax[4].imshow(data[:,:,4])
im5 = ax[5].imshow(data[:,:,5])
fig.colorbar(im5,extend='max')

我想让这个循环起来。如何将im[]声明为接受ax.imshow()返回的类型

代码语言:javascript
复制
for i in np.arange(6):
  im[i] = ax[i].imshow(data[:,:,i])
fig.colorbar(im[5],extend='max')
``
EN

回答 1

Stack Overflow用户

发布于 2020-07-18 05:37:22

创建一个空列表并将元素追加到循环中。

代码语言:javascript
复制
im = []
for i in np.arange(6):
  im.append(ax[i].imshow(data[:,:,i]))
fig.colorbar(im[5],extend='max')

可以简化为列表理解(但这可能更难阅读):

代码语言:javascript
复制
im = [ax[i].imshow(data[:,:,i]) for i in np.arange(6)]
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/62961780

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档