Как добавить маркеры в легенду о сюжете Plots.jl?

Код

using Plots
pyplot(markershape = :auto)
for i in 1:4
  plot!(rand(10), label = "Series " * string(i))
end
savefig("Plot.png")

производит следующий сюжет:

Маркеры не появляются в легенде, а только цвет линии ряда данных. Это значительно затрудняет сопоставление линий с надписями в легенде, особенно для тех, кто страдает дальтонизмом или читает черно-белую распечатку. Есть ли способ отобразить маркеры сюжета и цвета линий в легенде?

2 ответа

Решение

Вероятно, есть более эффективный и простой способ, но вы можете попробовать построить линию / маркеры отдельно:

using Plots
pyplot(markershape = :auto)
for i in 1:4
    x = rand(10)
    plot!(x, color=i, marker=false, label="")
    scatter!(x, color=i, markersize=10, label = "Series " * string(i))
end
savefig("Plot.png")

сюжет

label="" подавляет запись легенды для строки

color=i гарантирует, что цвет линий / маркеров одинаков

Я добавляю ответ для потомков - это было исправлено в Plots, так что это работает:

plot(rand(10,4), markershape = :auto)

Другие вопросы по тегам