在Python中从矩阵中提取行,并在Matplotlib中将该行用作颜色

jhiyze9q  于 2023-04-12  发布在  Python
关注(0)|答案(3)|浏览(101)

这应该很容易,但我还没有掌握Python语法的窍门。我创建了一个像这样的数组:

colors = [ [(17.0/256.0), (15.0/256.0), (48.0/256.0)],  #Dark blue  (#110F30)
         [(239.0/256.0), (83.0/256.0), (25.0/256.0)]    #Orange     (#EF5319)
         ]

我想在plot语句中使用第一行或第二行作为颜色输入:

ax1.plot(time, temp - 273, color=colors[0,:], label=temp_axis_label)

然而,这显然是行不通的。从颜色矩阵中提取行的正确语法是什么?

brgchamk

brgchamk1#

简单:ax1.plot(time, temp - 273, color=colors[0], label=temp_axis_label)
问题在于,colors是一个列表的列表,而不是一个numpy矩阵:

colors = np.array([ [(17.0/256.0), (15.0/256.0), (48.0/256.0)],  #Dark blue  (#110F30)
         [(239.0/256.0), (83.0/256.0), (25.0/256.0)]    #Orange     (#EF5319)
         ])
ax1.plot(time, temp - 273, color=colors[0,:], label=temp_axis_label)

工作也。

zour9fqk

zour9fqk2#

删除,: ...

color = colors[0]
scyqe7ek

scyqe7ek3#

只需执行以下操作:

ax1.plot(time, temp - 273, color=colors[0], label=temp_axis_label)

你也可以考虑使用numpy:Link(如果您熟悉matlab并希望使用Python执行科学计算

相关问题