Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/298.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 如何使用numpy根据表格中单元格的大小调整图像的大小?_Python_Python 3.x_Numpy_Matplotlib - Fatal编程技术网

Python 如何使用numpy根据表格中单元格的大小调整图像的大小?

Python 如何使用numpy根据表格中单元格的大小调整图像的大小?,python,python-3.x,numpy,matplotlib,Python,Python 3.x,Numpy,Matplotlib,我想把一个图像放在一块板上的一个盒子里,图像的大小和单元格的大小一样。我有这个代码,但是当我创建一个大于8 x 8的电路板时,图像的大小不会改变 import numpy as np import matplotlib.pyplot as plt import matplotlib.image as mpimg from matplotlib.offsetbox import AnnotationBbox, OffsetImage fig, axes = plt.subplots() n

我想把一个图像放在一块板上的一个盒子里,图像的大小和单元格的大小一样。我有这个代码,但是当我创建一个大于8 x 8的电路板时,图像的大小不会改变

import  numpy as np
import matplotlib.pyplot as plt
import matplotlib.image as mpimg
from matplotlib.offsetbox import AnnotationBbox, OffsetImage

fig, axes = plt.subplots()

n = 8
tablero = np.zeros((n,n), dtype = int)

tablero[::2, 1::2] = 1
tablero[1::2, ::2] = 1
#tablero.shape

print(tablero)
plt.imshow(tablero, cmap='gray')


reina = mpimg.imread("C:\\Users\\hirof\\OneDrive\\Documentos\\Python_logica_2\\Proyecto", format = "png")
reina.thumbnail((2, 2))
imagebox = OffsetImage(reina, zoom=0.01)
imagebox.image.axes = axes
ab = AnnotationBbox(imagebox,[2,5])
axes.add_artist(ab)

plt.axis()
plt.show()

同样,当我使用
reina=mpimg.imread(“C:\\Users\\hirof\\OneDrive\\Documentos\\Python\u logica\u 2\\Proyecto”
,format=“png”)`编译器返回我[Errno 13]的权限被拒绝,我使用了comand chmod,我无法为您解决这个问题,您可能需要提供完整的文件名。字符串给人的印象是它只是目录名。要在单元格中放置图像,而不是
AnnotationBbox
,更容易再次使用
imshow
,但使用
extent=(x0,x1,y0,y1)
imshow
的一个问题是,您需要在之后再次设置xlim和ylim。要绘制棋子,使用UTF-8字符要容易得多。请参阅大多数编辑器,您只需复制粘贴与文本类似的棋子即可。然后用
ax.text(x,y,'♕', ha='center',va='center')
。另见