Widget HTML Atas

Can't Download Plot R

In this short post, we will learn how to save Seaborn plots to a range of different file formats. More specifically, we will learn how to use the plt.savefig method save plots made with Seaborn to:

  1. Portable Network Graphics (PNG)
  2. Portable Document Format (PDF)
  3. Encapsulated Postscript (EPS)
  4. Tagged Image File Format (TIFF)
  5. Scalable Vector Graphics (SVG)

First, we will create some basic plots and work with Matplotlibs savefig method to export the files to the different file formats. There is more information on data visualization in Python using Seaborn and Matplotlib in the following posts:

  • 9 Data Visualization Techniques you Need to Know in Python
  • How to Make Seaborn Scatter Plots in Python
  • Exploratory Data Analysis in Python (Scatter plots)
  • How to Visualize Response Time Distributions using Python and Seaborn

Prerequisites: Python and Seaborn

Now, before learning how to save Seaborn plots (e.g., to .png files), we need to have both Python and Seaborn installed. There are two easy methods to install Seaborn. First, if we don't have Python installed we can download and install a Python distribution packed with Seaborn (e.g., Anaconda). Second, if we already have Python installed we can install Seaborn using Pip. Of course, there are a number of mandatory dependencies (i.e., NumPy, SciPy, Matplotlib, & Pandas) but pip will installed them too. At times, we may need to update Seaborn and we will after we have installed Seaborn, learn how to update Seaborn to the latest version.

How to Install Seaborn with Pip

Now we're ready to use pip to install Seaborn. It's very simple. First, we open up a terminal window, or Windows command prompt, and type pip -m install seaborn. Pip can also be used to install a certain version of a Seaborn, if needed. Just add "==" and the version you need to install.

How to Upgrade Seaborn using Pip and Conda

In this section, before creating and saving a Seaborn plot we will learn how to upgrade Seaborn using pip and conda. First, if we want to upgrade Seaborn with pip we just type the following code: pip install -upgrade seaborn.

If we, on the other hand, have the Anaconda Python distribution installed we will use conda to update Seaborn. Now, this is also very easy and we will open up a terminal window (or the Anaconda Prompt, if we use Windows) and type conda update seaborn.

Learn more about installing, using, and upgrading Python packages using pip, pipx, and conda in the following two posts:

  • Installing, using. and upgrading Python packages using pip and conda
  • Installing Python packages directly into virtual environments using pipx

When we are installing and upgrading packages, we may notice, that we also need to upgrade pip. This can be done by typing pip install --upgrade pip. Now, that you know what you need to have installed, to follow this post, we can continue to the 4 steps to save a Seaborn plot.

4 Steps to Save a Seaborn Plot as a File

Now, before getting into the details in how to export a Seaborn plot as a file, we will summarize the method in 4 simple steps:

1. Import the Needed Libraries:

First, before saving a plot we need the libraries to work with. Thus, we import Seaborn, Matplotlib.pyplot, and Pandas:

          

import seaborn as sns import matplotlib.pyplot as plt import pandas as pd

Code language: Python ( python )

Notice how we follow the convention and impor the packages according to common used acronyms (e.g. "sns" for Seaborn).

2. Load the Data to Visualize:

Second, we need to load the data we are going to visualize in Python:

          

data = 'https://vincentarelbundock.github.io/Rdatasets/csv/datasets/mtcars.csv' df = pd.read_csv(data, index_col=0)

Code language: Python ( python )

Typically, we might already know how to load data when we save the plot(s). For completeness, however, this step is included as it's one of the steps to save a figure. In the next step, we will create the figure.

3. Create the Plot

Third, we need to create the figure to be saved. Here we'll use Seaborn's distplot(FILE_NAME_AND_PATH) method (see examples below, as well):

          

sns.distplot(df['mpg'])

Code language: Python ( python )

Runnig the above command will create a distribution plot. In the next section, we will save the plot we created as a .png file.

4. Save the Plot

Finally, we can save the plot with plt.savefig(). Continue to learn more details about how to export figures (e.g., as .eps, .tiff).

          

plt.savefig('save_as_a_png.png')

Code language: Python ( python )

That was 4 steps to export a Seaborn plot, in the next sections we are going to learn more about plt.savefig() and how to save Seaborn plots as different file types (e.g., png, eps). In the next section, you will learn more about the syntax of plt.savefig().

Using the plt.savefig Method

In this section, before we start saving a Seaborn plot as a file, we are going to learn a bit more about the plt.savefig method.

Saving Seaborn plots to files using the plt.savefig method

The savefig method

As can be seen in the image above, we have a number of arguments to work with.

In this post, we are going to work with some of them when saving Seaborn plots as a file (e.g., PDF). Specifically, we will use the fname, dpi, format, orientation, and transparent. Now, orientation can only be used in the format is postscript (e.g., eps). Thus, we will only use it when we are saving a Seaborn plot as a .eps file.

Concerning the other arguments, they will work with other formats as well but we will only use them when we save a Seaborn plot as a png file.

How to Save a Seaborn Plot as a File (i.e., png, eps, svg, pdf)

In this section, we are finally going to learn how to save a Seaborn plot. Now, in all the examples of saving Seaborn plots here we will start by creating a plot. First, we need to import Seaborn, matplotlib.pyplot, and Pandas. Here, we are following convention and import seaborn as sns, matplotlib.pyplot as plt, and pandas as pd. Note, we need to do this in all our Python scripts in which we are visualizing data and saving the plots to files.

          

import seaborn as sns import matplotlib.pyplot as plt import pandas as pd

Code language: Python ( python )

Example Data

Next, we are going to import data to visualize. Here, we are using Pandas and the pd.read_csv method to load data from a CSV file.

          

data = 'https://vincentarelbundock.github.io/Rdatasets/csv/datasets/mtcars.csv' df = pd.read_csv(data, index_col=0) df.head(6)

Code language: Python ( python )

The above output we obtained by using the head() method. This is a great way to get a quick view of the first rows of our dataset. In the next section, you will learn how to save your Seaborn figure as a .png file.

How to Save a Seaborn Plot as png

In the first example, we are going to export the Seaborn plot as Portable Network Graphics (png). First, we need to create our plot and we are going to create a simple histogram using sns.distplot. Here's how to use plt.savefig to export a plot as a PNG file:

          

sns.distplot(df['mpg']) # Saving the Seaborn Figure: plt.savefig('save_as_a_png.png')

Code language: Python ( python )

In the second line of code, we used plt.savefig with only the fname argument. Note, we are saving the file as a png only by using a string as fname. That is, we add the file ending .png to tell plt.savefig that we want the Seaborn plot saved as a png.

Saving a Seaborn Histogram Plot as Png File

Saved PNG file (larger version)

Note, the above image was created to be larger than running the code above. In the next section, you will learn how to save your figure as a high-resolution .png file.

Saving a Seaborn Plot as a High-Resolution PNG

Now, we will also use the dpi argument here. If we, for instance, wanted to save the histogram plot as a high-resolution image file. Most commonly is, however, that when we need a high-resolution image, we also want a different format. Anyway, if we want to save the histogram with 300 dpi, this is how we do it:

          

sns.distplot(df['mpg']) plt.savefig('saving-a-high-resolution-seaborn-plot.png', dpi=300)

Code language: Python ( python )

That was how to save the plot as a high-resolution .png file. In the next example, we will also export the figure as a transparante PNG.

How to Save a Seaborn Figure as a Transparent PNG

In this example, we are going to save the Seaborn plot as a transparent png. That is, we will use the transparent argument and set it to true.

          

sns.distplot(df['mpg']) # Seaborn Save Figure: plt.savefig('saving-a-seaborn-plot-as-png-file-transparent.png', transparent=True)

Code language: Python ( python )

How to Export a Seaborn Plot as PNG

Transparent PNG

As you may already be aware of, we can save our plots in other file formats. In the next section, we will have a look at how we can save the figure as a .pdf file.

Save a Seaborn Figure as a PDF File

In this section, we are going to learn how to save a Seaborn plot as a .pdf file. As when we learned how to save a histogram figure as a png, we first need to make a plot. Here, we are going to create a scatter plot using the scatterplot method from Seaborn.

          

sns.scatterplot(x='wt', y='drat', data=df) plt.savefig('saving-a-seaborn-plot-as-pdf-file.pdf')

Code language: Python ( python )

How to Save a Seaborn Plot as a PDF file

PDF file

Saving a Seaborn Python Plot as a High-Resolution PDF file

In this section, we are going to use the dpi argument again. Many scientific journals requires image files to be in high-resolution images. For example, the PLOS journals (e.g., Plos One) requires figures to be in 300 dpi. Here's how to save a Seaborn plot as a PDF with 300 dpi:

          

sns.scatterplot(x='wt', y='drat', data=df) plt.savefig('saving-a-seaborn-plot-as-pdf-file-300dpi.pdf', dpi=300)

Code language: Python ( python )

How to Save Python Data Visualizations (e.g., Seaborn plots) to an EPS file

In this section, we will carry on and learn how to save a Seaborn plot as an Encapsulated Postscript file. First, we will change the file ending (the fname argument) to .eps to export the plot as an EPS file. Second, we will learn how to save the Seaborn plot as a high-resolution .eps file.

In this example, we are going to create a violin plot using Seaborn's catplot method and save it as a file:

          

sns.catplot(x='cyl', y='drat', hue='am', data=df, kind='violin') # Seaborn Save Plot: plt.savefig('saving-a-seaborn-plot-as-eps-file.eps')

Code language: Python ( python )

Saving a seaborn plot as a eps file

Violin plot to save to eps

Saving a Seaborn Plot as a High-resolution EPS file

Now, we are already familiar with how to set the dpi but in the next example we are going to save the Seaborn violin plot as a high-resolution image file:

          

sns.catplot(x='cyl', y='drat', hue='am', data=df, kind='violin') plt.savefig('saving-a-seaborn-plot-as-eps-file-300dpi.eps', dpi=300)

Code language: Python ( python )

Saving plots as EPS, and also TIFF (as we will learn about later) is also formats that are required, or recommended (e.g., see the American Psychological Associations recommendations in ther submission guidelines).

Saving the Seaborn Plot in Landscape (EPS)

Now, in the final saving a plot to EPS example, we are going to use the orientation argument to save the Seaborn plot in landscape.

          

sns.catplot(x='cyl', y='drat', hue='am', data=df, kind='violin') plt.savefig('saving-a-seaborn-plot-as-eps-file-300dpi.eps', orientation="landscape", dpi=300)

Code language: Python ( python )

How to Save a Seaborn plot as a file

Seaborn plot saved in landscape orientation

How to Save Seaborn plots to TIFF files

In this section, we will use the final format to save the Seaborn plots. More specifically, we will save the plots as in the Tagged Image File Format (TIFF). Now, as with the other formats, we will change the file ending (the fname argument) to .tiff. This, will as we now know, save the plot as a TIFF file.

Learn how to save a swarm plot, created in seaborn, to a TIFF file.

Swarm plot to save as TIFF

In the how-to save to a TIFF file example, we are going to continue working with the catplot method but now we are going to create a swarm plot and save it as a TIFF file.

          

sns.catplot(x='vs', y='wt', hue='am', data=df, kind='swarm') plt.savefig('saving-a-seaborn-plot-as-eps-file.tiff')

Code language: Python ( python )

Saving a Python (Swarm) Plot as a High-Resolution TIFF File

In the final, how to save a TIFF file example, we are going to save the Seaborn plot as a high-resolution TIFF file. Why? Well, as previously mentioned a lot of scientific journals require, or recommend, that we use the PDF, EPS, or TIFF format when we submit our scientific papers.

Now, here's how to export the Seaborn plot as a TIFF file with high-resolution:

          

sns.catplot(x='vs', y='wt', hue='am', data=df, kind='swarm') plt.savefig('saving-a-seaborn-plot-as-eps-file.tiff', dpi=300)

Code language: JavaScript ( javascript )

How to Save a Plot in Python Seaborn as a SVG File

In the final example, we are going to save a Seaborn plot as a SVG file. Now, we already know that we just change the file ending to accomplish this:

          

sns.catplot(x='vs', y='wt', hue='am', data=df, kind='swarm') plt.savefig('saving-a-seaborn-plot-as-eps-file.svg')

Code language: Python ( python )

Note, if we want to save the SVG file as a high-resolution SVG file, we'd just add the dpi=300 as we've learned in the previous examples.

There are, of course, a couple of other arguments that could've been used when working with plt.savefig. However, when working with Seaborn these are, most often, redundant. The formatting is already taken care of and we get quite nice-looking image files of our Seaborn plots.

Save a Seaborn Plot as a File: YouTube Tutorial

Here's a YouTube tutorial going through most of the content in this post:

Conclusion: Saving Plots in Python to Files

In this Python data visualization tutorial, we have learned how to save Python plots (made in Seaborn) as PNG, PDF, EPS, TIFF, and SVG files. It was quite simple, and we simply used the savefig method. Furthermore, you have also learned how to export the files as high-resolution images that may be used for e,g, publication purposes.

Posted by: blues001.blogspot.com

Source: https://www.marsja.se/how-to-save-a-seaborn-plot-as-a-file-e-g-png-pdf-eps-tiff/