可绘制矩阵-将标签分配给每一列或用于plt.legend(plt.plot)

时间:2019-04-24 15:06:33

标签: python matplotlib

让我们说我已经计算了一个要绘制的矩阵(在代码中为xy),我也想能够根据进入其中的数组之一来命名矩阵每一行的有效内容首先建立矩阵(即x)

x = 2**np.array([8, 9, 10, 11, 12])

y = np.array([0.0001, 0.001, 0.01, 0.05, 0.06, 0.09, 0.1, 0.17, 0.3,
                     0.5, 0.7, 1, 3, 5, 10, 15, 20, 25, 30, 35, 40])

y = y[:, np.newaxis]

xy = x*y
plt.plot(xy, label=x)
plt.legend()

code result

在示例中您可以看到python代码将所有数组打印到图例中(我知道这是代码所期望的),但是我要查找的是要读取的图例

蓝色-256

黄色-512

绿色-1024

红色-2048

紫色-4096

有人知道使用for循环实现此行为的方法吗?

1 个答案:

答案 0 :(得分:0)

经过一些实验自己发现了它

x = 2**np.array([8, 9, 10, 11, 12])

y = np.array([0.0001, 0.001, 0.01, 0.05, 0.06, 0.09, 0.1, 0.17, 0.3,
                     0.5, 0.7, 1, 3, 5, 10, 15, 20, 25, 30, 35, 40])

y = y[:, np.newaxis]

xy = x*y
plt.plot(xy)
plt.legend(x)