这应该很容易,但我还没有掌握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)
]
我想在绘图语句中使用第一行或第二行作为颜色输入:
ax1.plot(time, temp - 273, color=colors[0,:], label=temp_axis_label)
然而,这显然不起作用(显然)。从颜色矩阵中提取行的正确语法是什么?
答案 0 :(得分:2)
简单地说:ax1.plot(time, temp - 273, color=colors[0], label=temp_axis_label)
问题在于颜色是列表的列表,而不是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)
也有效。
答案 1 :(得分:1)
放弃,:
...
color = colors[0]
答案 2 :(得分:0)
简单地说:
ax1.plot(time, temp - 273, color=colors[0], label=temp_axis_label)
如果你熟悉matlab并想用Python进行科学计算,你也可以考虑使用numpy:http://numpy.scipy.org/