Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Can the graph generated be saved as an image ? #14

Closed
jmaister opened this issue Jun 21, 2018 · 10 comments
Closed

Can the graph generated be saved as an image ? #14

jmaister opened this issue Jun 21, 2018 · 10 comments

Comments

@jmaister
Copy link

No description provided.

@stared
Copy link
Owner

stared commented Jun 24, 2018

You mean - the final graph or an animation?

Both are doable.

@jmaister
Copy link
Author

The final graph.
How can it be done?

@minghao-wu
Copy link

if you have a plan for this feature, is it doable to save the image as a vector file?

I mean, if the saved image is a vector file, it doesn't get blurred when we zoom in.

Thank you very much for your work.

@stared
Copy link
Owner

stared commented Jul 4, 2018

OK, I saw it and it is not as straightforward as I thought. plt.savefig does not work, since it is after plt.show.

If it is notebook, you can right click and save it. For other options it depends if you want to do it instead of showing (I can add it easily), or along with (need to check).

@mickvanhulst
Copy link
Contributor

Just weighing in here: saving is of importance when doing e.g. K-fold cross-validation. As it's live, the graphs are overwritten meaning that previous data is lost. If we want to do cross-validation in one cell, then we need to save the figures somewhere else.

I've circumvented this by saving the objects in a list and then printing them out and manually saving them afterwards, but this is obviously not optimal.

Any suggestions?

@stared
Copy link
Owner

stared commented Dec 9, 2018

@mickvanhulst If you know how to do that, I am open to Pull Requests. Otherwise, I don't have much time for this project right now.

@mickvanhulst
Copy link
Contributor

@stared I've sent a pull request. I've basically added two parameters (save_img and file_name), which can be used to save the image. Every time the draw function is called, the image will be saved. I've tested the method for Pytorch thus far. Let me know if any other changes are required.

In terms of documentation, I don't want to ruin the style you've created, so feel free to amend the following:

To save the plot, add save_img=True and add the file_name parameter with the directory, filename and file name extension (e.g. file_name='./folder_1/filename.png') as parameters when calling PlotLosses().

@stared
Copy link
Owner

stared commented Dec 27, 2018

@mickvanhulst I merged the pool request, thank you a lot! @jmaister - it finally works (with current repo master or will work with 0.2.3 and above).

Just use PlotLosses(fig_path="./plot.png") or PlotLossesKeras(fig_path="./plot.png") (not file_name :) ).

@stared stared closed this as completed Dec 27, 2018
@mrmitzh
Copy link

mrmitzh commented Nov 28, 2020

The following code doesn't work in the latest version of livelossplot.

PlotLosses(fig_path="./plot.png")

Do we have other ways to save the figure generated? 

@Vince-LD
Copy link

Vince-LD commented Mar 6, 2021

Hey @mrmitzh, this is my first response on Github ever. It comes kinda late compared to the discussion, but I've just been confronted with the same issue of not being able so save the graphs. I'm using PlotLossesKerasTF() and fig_path = 'filename.png' isn't working. After digging a bit into the code (I'm not an expert lol), I found that MatplotlibPlot() has a figpath argument.
So the solution for me, using Jupyter Notebook is :

from livelossplot import PlotLossesKerasTF
from livelossplot.outputs import MatplotlibPlot

live_loss = PlotLossesKerasTF(outputs=[MatplotlibPlot(figpath ="graph.png")])

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

6 participants