gr(); plot(rand(10,5),label=[1,2,3,4,5]) results in:

but with pyplot(); plot(rand(10,5),label=[1,2,3,4,5]) results in this presumably incorrect behavior:

PyPlot v"2.8.2"
Plots v"0.26.2"
PyPlot.PyCall.pyimport("matplotlib").__version__ == "3.1.1"
Julia version v"1.4.0-DEV.106"
At first the pyplot behaviour seems incorrect, although in some ways it is more correct.
Each line on your plot is a column of your random array and the labels are the corresponding "columns" of the thing that your passed to the label argument. When you pass a 5x1 array, there are not enough columns, so pyplot repeats the one column that you give it. On the other hand if you did label=[1 2 3 4 5] (a 1x5 array), then you have 5 columns of length one, so you get what you expect.
In any case, the backends should display the same thing, so we need to decide which one is "more wrong" and fix that one.
IMO pyplot has the correct behaviour.
Agreed. I am happy to fix this, although I wont have time for a little over 24 hours, so it is quite possible that someone will beat me to it.
I think that whoever does fix this should also have a look at the docs to check if this is discussed. If not, then maybe there is scope for some clarification.
Most helpful comment
At first the
pyplotbehaviour seems incorrect, although in some ways it is more correct.Each line on your plot is a column of your random array and the labels are the corresponding "columns" of the thing that your passed to the
labelargument. When you pass a 5x1 array, there are not enough columns, sopyplotrepeats the one column that you give it. On the other hand if you didlabel=[1 2 3 4 5](a 1x5 array), then you have 5 columns of length one, so you get what you expect.In any case, the backends should display the same thing, so we need to decide which one is "more wrong" and fix that one.