首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Python Matplotlib:使用二维参数绘图:如何指定选项?

Python Matplotlib:使用二维参数绘图:如何指定选项?
EN

Stack Overflow用户
提问于 2013-06-18 22:10:04
回答 3查看 397关注 0票数 4

我绘制了几条曲线,如下所示:

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

plt.plot(x, y)

其中xy是二维的(对于本例来说,假设是N x 2)。

现在我想单独设置每条曲线的颜色。我试过这样的东西:

代码语言:javascript
复制
plot(x, y, color= colorArray)

例如colorArray= ['red', 'black'],但无济于事。对于其他选项(线条样式、标记等)也是如此。

我知道这可以通过一个for循环来完成。但是,由于此plot命令接受多维x/y,因此我认为还可以以这种方式指定绘图选项。

有可能吗?这样做的正确方法是什么?(我在搜索时找到的所有东西都有效地使用了循环)

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2013-06-18 22:20:44

您可以使用ax.set_color_cycle

代码语言:javascript
复制
import numpy as np
import matplotlib.pyplot as plt
np.random.seed(2013)
N = 10
x, y = np.random.random((2,N,2))
x.cumsum(axis=0, out=x)
y.cumsum(axis=0, out=y)
fig, ax = plt.subplots()
colors = ['red', 'black']
ax.set_color_cycle(colors)
ax.plot(x,y)
plt.show()

收益率

票数 5
EN

Stack Overflow用户

发布于 2013-06-18 22:15:20

我会按照你正在做的方式绘图,然后根据你的colorArray做一个for循环来改变颜色

代码语言:javascript
复制
plt.plot(x,y)
for i, line in enumerate(plt.gca().lines):
    line.set_color( colorArray[i] )
票数 1
EN

Stack Overflow用户

发布于 2013-06-18 22:15:59

在执行此操作时,我通常会传递一维数组,如下所示:

代码语言:javascript
复制
plot(x[0], y[0], 'red', x[1], y[1], 'black')
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/17171122

复制
相关文章

相似问题

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