gpt4 book ai didi

python matplotlib gridspec,不需要的任意轴标签

转载 作者:行者123 更新时间:2023-11-28 17:27:42 26 4
gpt4 key购买 nike

我有一些代码可以绘制网格,每个单元格中的数据都是不同的并且具有非常特定的位置。我发现执行此操作的最简单方法是使用 gridspec 创建网格并使用它来精确定位我的子图,但是我遇到了一个问题,即整个网格沿每个轴标记为 0 到 1。每次都会发生这种情况,即使网格的尺寸发生变化也是如此。显然,这些数字与我的数据无关,并且由于我要显示的是定性而非定量,因此我想完全从此图中删除所有标签。

Here is a link to an image with an example of my problem

这是我用来创建该图像的 MWE:

import numpy as np
import matplotlib.gridspec as gridspec
import matplotlib.pyplot as plt

# mock-up of data being used
x = 6
y = 7
table = np.zeros((x, y))

# plotting
fig = plt.figure(1)
gs = gridspec.GridSpec(x, y, wspace=0, hspace=0)
plt.title('Example Plot')

for (j, k), img in np.ndenumerate(table):
ax = fig.add_subplot(gs[x - j - 1, k])
ax.set_xticklabels('')
ax.set_yticklabels('')

plt.show()

我还没有找到任何类似这个问题的记录,所以任何帮助将不胜感激。

最佳答案

如果您只想在图上绘制网格,请使用以下代码:

import numpy as np
import matplotlib.pyplot as plt

# mock-up of data being used
x = 6
y = 7
table = np.zeros((x, y))

# plotting
fig = plt.figure(1)
plt.title('Example Plot')

plt.gca().xaxis.grid(True, color='darkgrey', linestyle='-')
plt.gca().yaxis.grid(True, color='darkgrey', linestyle='-')
plt.show()

另一个变体是使用 gridspec:

...
# hide ticks of main axes
ax0 = plt.gca()
ax0.get_xaxis().set_ticks([])
ax0.get_yaxis().set_ticks([])

gs = gridspec.GridSpec(x, y, wspace=0, hspace=0)
plt.title('Example Plot')

for (j, k), img in np.ndenumerate(table):
ax = fig.add_subplot(gs[x - j - 1, k])
# hide ticks of gribspec axes
ax.get_xaxis().set_ticks([])
ax.get_yaxis().set_ticks([])

enter image description here

关于python matplotlib gridspec,不需要的任意轴标签,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37450127/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com