<p>如果你坚持让图看起来尽可能接近你所展示的,即一列256个子图,有大标签,那么唯一真正的解决办法就是增加数字的大小,正如@Diziet Asahi在回答中提到的那样。在</p>
<p>尽管如此,我有两个改进建议。在</p>
<p><strong>选项1</strong></p>
<p>将子图分成两列。这使得图像在IMO中更易于阅读。这只需对绘图功能进行小的修改:</p>
<pre><code>def plot_color_gradients(cmap_category, cmap_list, nrows):
fig, axes = plt.subplots(nrows=int(nrows/2), ncols=2, figsize=(12,11))
fig.subplots_adjust(top=0.95, bottom=0.01, left=0.1, right=0.98, wspace=0.25)
fig.suptitle(cmap_category + ' colormaps', fontsize=14)
for ax, name in zip(axes.flatten(), cmap_list):
ax.imshow(gradient, aspect='auto', cmap=plt.get_cmap(name))
pos = list(ax.get_position().bounds)
x_text = pos[0] - 0.01
y_text = pos[1] + pos[3]/2.
fig.text(x_text, y_text, name, va='center', ha='right', fontsize=10)
ax.set_axis_off() # Don't need a separate loop for this
</code></pre>
<p>它给出了:</p>
<p><a href="https://i.stack.imgur.com/x3SF8.png" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/x3SF8.png" alt="enter image description here"/></a></p>
<p><strong>选项2</strong></p>
<p>如果你想把所有的东西都放在一列里,那么至少可以让图看起来更好一些。也就是说,在坐标轴的右侧放置其他标签。在</p>
<p><strong>注意</strong>:这可能不是您想要的,但除非您使图形非常大(高),否则图像总是显得局促</p>
<p>改变绘图功能如下所示:</p>
^{pr2}$
<p><a href="https://i.stack.imgur.com/Y4piS.png" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/Y4piS.png" alt="enter image description here"/></a></p>
<p>虽然不如第一个例子好,但还是有了改进。在</p>