Hi,
I am running a simple code and trying to save a plot created with pyplot() in pdf or eps.
μs = log.(xs)
σs = rand(length(xs))
plot(xs,μs,grid=false)
When I try save("filename.pdf") the file is not saved. Only png actually works. Shouldn't pyplot support eps and pdf?
mike_k
September 30, 2019, 5:11pm
2
If you use PyPlot with PyCall :
create a figure first, e.g., fig = figure("myfigure",figsize=(5,5))
then add your code from above (which adds the plot to the figure)
save it to pdf with savefig("myfig.pdf")
close the figure with close(fig)
If you use Plots.jl with pyplot() backend, save the plot in a variable first:
p = plot(xs,μs,grid=false)
then save it: savefig(p, "myfigure.pdf")
It works great with that simple code. But if change the legend font type, and try to repeat your procedure I get like
PyError ($(Expr(:escape, :(ccall(#= /Users/user/.juliapro/JuliaPro_v1.2.0-1/packages/PyCall/ttONZ/src/pyfncall.jl:44 =# @pysym (:PyObject_Call), PyPtr, (PyPtr, PyPtr, PyPtr), o, pyargsptr, kw))))) <class ‘RuntimeError’>
RuntimeError(‘TrueType font is missing table’)