首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >调整地块大小并保存空

调整地块大小并保存空
EN

Stack Overflow用户
提问于 2021-12-22 00:46:34
回答 1查看 64关注 0票数 1

我正在试图绘制一个热图重叠一个图像,使用海运和matplotlib,如下面的代码所示:

代码语言:javascript
复制
import seaborn as sns
import matplotlib
import matplotlib.pyplot as plt
import pandas as pd
import numpy as np
import matplotlib.image as mpimg 

df = pd.read_csv('/home/diegonachon/eye-tracker/eyedata/csv_heatmap/cl/Suj5_Control_HO_1ph.csv')
df['xpl'] = pd.to_numeric(df['xpl'], errors = 'coerce')
df['ypl'] = pd.to_numeric(df['ypl'], errors = 'coerce')
df = df[(df['event'] == 'FIX') & (~(df['xpl'].isnull()))]
hmax = sns.kdeplot(x = df.xpl, y = df.ypl, cmap="Reds", shade=True, bw_adjust= 0.6, clip = ((0,800), (0,600)), 
                   alpha = 0.6, antialiased = True)
hmax.collections[0].set_alpha(0)

map_img = mpimg.imread('/home/diegonachon/eye-tracker/eyedata/asd.jpg') 

plt.imshow(map_img, zorder=0, extent=[0, 800, 0, 600])

# image = plt.imshow(map_img, zorder=0, extent=[0, 800, 0, 600], aspect = 250)
# figure(figsize=(8, 6), dpi=80)
# plt.imsave('test.png', image)
# plt.savefig('fig8_6_80dpi.png')   

plt.show()

结果:https://imgur.com/a/4rdgCOH

  1. 第一件事是我无法调整它的大小,我尝试过更改“方面”和“图形大小”,但是没有发生任何事情(如注释中的代码所示)

当我试图保存绘图生成时,是和空文件(

  1. )或错误(取消注释图像=plt.imswho().)- AttributeError:'tuple‘对象没有属性'shape')

谢谢!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-12-22 01:12:04

下面是我对您的代码所做的更改。因为我不能访问你们的数据,所以我用了随机数,但是这会给你们一个想法。有关答案,请参阅大写注释。

代码语言:javascript
复制
import seaborn as sns
import matplotlib
import matplotlib.pyplot as plt
import pandas as pd
import numpy as np
import matplotlib.image as mpimg 

# CREATED FOR TEST
x = np.random.rand(100,)
y = np.random.rand(100,)

fig, ax = plt.subplots(figsize=(10,10)) # YOU CAN MODIFY FIGSIZE FROM HERE
ax = sns.kdeplot(x = x, y = y, cmap="Reds", shade=True, bw_adjust= 0.6, 
clip = ((0,800), (0,600)), 
               alpha = 0.6, antialiased = True)
ax.collections[0].set_alpha(0)

# map_img = mpimg.imread('/home/diegonachon/eye-tracker/eyedata/asd.jpg') 

#plt.imshow(map_img, zorder=0, extent=[0, 800, 0, 600])

# image = plt.imshow(map_img, zorder=0, extent=[0, 800, 0, 600], 
#aspect = 250)
# figure(figsize=(8, 6), dpi=80)
# plt.imsave('test.png', image)
# plt.savefig('fig8_6_80dpi.png')  

# THIS WILL SAVE YOUR IMAGE AS A PNG FILE
plt.savefig('test.png') 
plt.show()
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/70443123

复制
相关文章

相似问题

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