Matplotlib 颜色图背景

Matplotlib colormap background

我正在开发一个函数,该函数将根据颜色图生成图像。这是我试过的:

#the variable 'name' is supplied before
gradient = np.vstack((np.linspace(0, 1, 256), np.linspace(0, 1, 256)))
plt.imshow(gradient, aspect='auto', cmap=plt.get_cmap(name))
plt.savefig("color.png", transparent=True)

但是导出的时候有透明边框:

在新标签页中打开时,您将能够看到边框。有办法去掉这个边框吗?

您应该添加 plt.axis('off') 以关闭轴框,并添加 plt.subplots_adjust(top = 1, right = 1, bottom = 0, left = 0) 以移除图像周围的填充。

完整代码

import numpy as np
import matplotlib.pyplot as plt

name = 'jet'
gradient = np.vstack((np.linspace(0, 1, 256), np.linspace(0, 1, 256)))
plt.imshow(gradient, aspect = 'auto', cmap = plt.get_cmap(name))
plt.axis('off')
plt.subplots_adjust(top = 1, right = 1, bottom = 0, left = 0)
plt.savefig("color.png", transparent = True)