| 123456789101112131415161718192021222324252627282930313233343536 |
- import matplotlib.pyplot as plt
- import numpy as np
- import os
- def save_color_gradient(cmap_name='jet', width=512, height=50, filename=None):
- """
- 保存颜色从 0 到 1 渐变的图像
- :param cmap_name: 色图名,如 'jet', 'viridis'
- :param width: 渐变图宽度(像素)
- :param height: 渐变图高度(像素)
- :param filename: 保存的文件名(可选)
- """
- cmap = plt.get_cmap(cmap_name)
- gradient = np.linspace(0, 1, width).reshape(1, -1)
- gradient = np.repeat(gradient, height, axis=0)
- plt.figure(figsize=(8, 1.5))
- plt.imshow(gradient, aspect='auto', cmap=cmap)
- plt.title(f"Color Gradient (colormap = '{cmap_name}')")
- plt.xlabel("Score: 0 → 1")
- plt.yticks([])
- plt.xticks([0, width//4, width//2, 3*width//4, width], [0.0, 0.25, 0.5, 0.75, 1.0])
- plt.tight_layout()
- # 默认文件名
- if filename is None:
- filename = f"color_gradient_{cmap_name}.png"
- # 保存图像
- plt.savefig(filename, dpi=150)
- plt.close()
- print(f"已保存: {os.path.abspath(filename)}")
- # 调用:保存 jet 渐变图
- save_color_gradient('jet')
|