首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >matplotlib中pl.cm.Spectral的pyplot等效项

matplotlib中pl.cm.Spectral的pyplot等效项
EN

Stack Overflow用户
提问于 2014-02-24 06:17:27
回答 3查看 14.1K关注 0票数 4

我一直在使用pylab中的代码,它工作得很好:

代码语言:javascript
复制
import pylab as pl
colors = pl.cm.Spectral(np.linspace(0, 1, 10))

然而,我想离开pylab,因为在文档中它说“pyplot接口通常是非交互式绘图的首选”。所以我试着使用matplotlib.cm,但是找不到对应的东西。有人能帮我这个忙吗?

谢谢!

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2014-02-24 06:37:24

在脚本中使用matplotlib的最常见方法是

代码语言:javascript
复制
import matplotlib.pyplot as plt

在那里,您可以使用plt.cm.Spectral或通过方便的函数plt.get_cmap访问Spectral色彩映射表。例如,

代码语言:javascript
复制
colors = plt.cm.Spectral(np.linspace(0, 1, 10))

代码语言:javascript
复制
colors = plt.get_cmap('Spectral')(np.linspace(0, 1, 10))

等同于

代码语言:javascript
复制
colors = pl.cm.Spectral(np.linspace(0, 1, 10))
票数 9
EN

Stack Overflow用户

发布于 2014-02-24 06:23:17

应该只是cm.Spectral

代码语言:javascript
复制
In [123]:

import matplotlib.cm as cm
cm.Spectral(np.linspace(0,1,10))
Out[123]:
array([[ 0.61960787,  0.00392157,  0.25882354,  1.        ],
       [ 0.84721262,  0.26120723,  0.30519032,  1.        ],
       [ 0.96378316,  0.47743176,  0.28581316,  1.        ],
       [ 0.99346405,  0.74771243,  0.43529413,  1.        ],
       [ 0.99777009,  0.93087275,  0.63306423,  1.        ],
       [ 0.94425221,  0.97770089,  0.66205308,  1.        ],
       [ 0.74771243,  0.89803922,  0.627451  ,  1.        ],
       [ 0.45305653,  0.78154557,  0.64628991,  1.        ],
       [ 0.21607075,  0.55563248,  0.73194927,  1.        ],
       [ 0.36862746,  0.30980393,  0.63529414,  1.        ]])
In [119]:

import pylab as pl
pl.cm.Spectral(np.linspace(0, 1, 10))
Out[119]:
array([[ 0.61960787,  0.00392157,  0.25882354,  1.        ],
       [ 0.84721262,  0.26120723,  0.30519032,  1.        ],
       [ 0.96378316,  0.47743176,  0.28581316,  1.        ],
       [ 0.99346405,  0.74771243,  0.43529413,  1.        ],
       [ 0.99777009,  0.93087275,  0.63306423,  1.        ],
       [ 0.94425221,  0.97770089,  0.66205308,  1.        ],
       [ 0.74771243,  0.89803922,  0.627451  ,  1.        ],
       [ 0.45305653,  0.78154557,  0.64628991,  1.        ],
       [ 0.21607075,  0.55563248,  0.73194927,  1.        ],
       [ 0.36862746,  0.30980393,  0.63529414,  1.        ]])
票数 2
EN

Stack Overflow用户

发布于 2019-05-22 18:40:38

代码语言:javascript
复制
import matplotlib.pyplot as plt

colors = plt.get_cmap('Spectral')(np.linspace(0, 1, 10))

是目前唯一有效的解决方案。

matplotlib要使用的删除选项:

代码语言:javascript
复制
colors = plt.cm.Spectral(np.linspace(0, 1, 10))

在最新版本中。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/21975424

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档