我尝试了许多调色板,包括使用matplotlib和seaborn制作自己的调色板。
现在我想知道我正在使用哪种调色板。我该怎么做?是否有类似于matplotlib.whichColormap
的命令呢?
我尝试了许多调色板,包括使用matplotlib和seaborn制作自己的调色板。
现在我想知道我正在使用哪种调色板。我该怎么做?是否有类似于matplotlib.whichColormap
的命令呢?
通常情况下,您无需查找正在使用的颜色映射,因为这是由您自己定义的。也就是说,在调用时:
plt.imshow(..., cmap="viridis")
你已经知道你正在使用 "viridis"。
如果你仍然觉得从现有的ScalarMappable获取信息会很有用,你可以使用get_cmap()
及其name
属性:
import matplotlib.pyplot as plt
import numpy as np
a = np.random.rand(4,5)
fig, ax = plt.subplots()
im = ax.imshow(a, cmap="viridis")
cm = im.get_cmap()
print(cm.name) # prints viridis
matplotlib.colors.ListedColormap(['red', 'gold', 'limegreen'])
,这种方法就不起作用了。因为当我这样做时,我只会得到类似于<matplotlib.colors.ListedColormap at 0x8b90fd0>
的东西,这对我来说毫无意义。 - Euler_Salter<matplotlib.colors.ListedColormap at 0x8b90fd0>
是一个对象。你要的除了这个对象还有什么对象?你可以通过cm.colors
获取颜色,但由于大多数内置的颜色映射具有256种颜色,因此你将得到一个非常长的列表。 - ImportanceOfBeingErnest