Изменение формы графика рассеяния на линию в легенде Julia PyPlot - PullRequest
0 голосов
/ 17 февраля 2019

Я пытаюсь изменить метку точечного графика, чтобы показать линию вместо маленькой точки, так как эту точку трудно увидеть на экране, не говоря уже о печати:

Difficult to see dot.

Позволяет ли это библиотека PyPlot?Соответствующие части моего кода следующие:

println("Importing (and possibly compiling JIT) a few relevant libraries...")
using LaTeXStrings,PyPlot;

println("Calculating a few points...")
samples = 10000;
T = 2 * pi;
x = collect(range(-pi,stop=pi,length=samples));
stepf = sign.(x);
N = 40;

"""
Sums of f
"""
fig, ax = subplots();
figname = "./Plots/filters.pdf";
ax[:scatter](x,stepf,label=latexstring("f(t)"),s=1);

ax[:axis]("off");
ax[:set_xlabel](latexstring("t"));
ax[:legend](loc="lower right");

fig[:savefig](figname);
close(fig)

РЕДАКТИРОВАТЬ

Основываясь на комментариях ниже, это сводится к поиску способа доступа к объектам Matplotlib Line2D через Джулию.

1 Ответ

0 голосов
/ 18 февраля 2019

Вот код @ImportanceOfBeingErnest, переведенный с Python на Julia PyCall.Определенно работает!

h,l  = ax[:get_legend_handles_labels]()
z = PyPlot.plt[:Line2D]([],[], color="C0")
h[end] = z
ax[:legend](labels=l,  handles=h, loc="lower right");
...