julia> out = DataFrame(Q1 = [3,3,3], Q2 = [3,2,1])
3×2 DataFrame
│ Row │ Q1 │ Q2 │
│ │ Int64 │ Int64 │
├─────┼───────┼───────┤
│ 1 │ 3 │ 3 │
│ 2 │ 3 │ 2 │
│ 3 │ 3 │ 1 │
julia> fig1 = pie([out.Q1], [1,2])
julia> fig1 = pie([out.Q1], [1,2,3])
julia> savefig(fig1)
So, I’m trying to save a pie chart from plots, created from a data frame.
When I do I get an error:
ERROR: MethodError: no method matching savefig(::Plots.Plot{Plots.GRBackend})
Is this to do with GRBackend, or do I need to add more details, like file type and location?
Check the function parameters, you are missing the filename. Use ?savefig in the REPL to get the help.
AndiMD
March 1, 2020, 7:29pm
3
The second parameter is the output file location. The file type is deduced from the extension (png, svg…).
The error message gives you a hint:
ERROR: MethodError: no method matching savefig(::Plots.Plot{Plots.GRBackend})
Closest candidates are:
savefig(::Plots.Plot, ::AbstractString) at /home/user/.julia/packages/Plots/qZHsp/src/output.jl:107
...
savefig(fig1,"C:/Users/brett/OneDrive/Documents/Soc323")
I did this, and did not get an error message, but no .png showed up in the destination folder.
Edit. I need to specify the file.
savefig(fig1,"C:/Users/brett/OneDrive/Documents/Soc323/fig1.png")
BLI
March 1, 2020, 11:28pm
5
If you save several figures to the same directory, it is easier if you define a fig path:
figpath = "C:/Users/brett/OneDrive/Documents/Soc323/"
savefig(fig1,figpath*"fig1.png")
savefig(fig1,figpath*"fig1.svg")
savefig(fig1,figpath*"fig1.pdf")
# etc.
Thanks, I figured it out and should have replied. Also, display(fig1), allows the figure to appear in a pdf.
jling
March 2, 2020, 2:42am
7
help?> savefig
search: savefig StackOverflowError
savefig([plot,] filename)
Save a Plot (the current plot if plot is not passed) to file. The file type is inferred from the file extension.
Nav
September 3, 2022, 1:41pm
8
Would be great to eventually have an option to save plots and tables to a zip file or to a database or to send the plot and table to a queue like RabbitMQ.