Bird
Raised Fist0
Data Analysis Pythondata~5 mins

Saving figures in Data Analysis Python

Choose your learning style10 modes available
Introduction

Saving figures lets you keep your charts and graphs as image files. This helps you share or use them later without re-creating them.

You want to include a chart in a report or presentation.
You need to save a graph to show your work to others.
You want to keep a backup of your analysis visuals.
You want to compare different charts side by side later.
You want to publish your graphs on a website or blog.
Syntax
Data Analysis Python
plt.savefig('filename.png', dpi=300, bbox_inches='tight')

filename.png is the name and format of the saved file.

dpi controls the image quality (dots per inch).

Examples
Saves the current figure as a PNG file named 'chart.png' with default settings.
Data Analysis Python
plt.savefig('chart.png')
Saves the figure as a PDF file with 200 dpi resolution.
Data Analysis Python
plt.savefig('plot.pdf', dpi=200)
Saves the figure as a JPG file and trims extra white space around the image.
Data Analysis Python
plt.savefig('graph.jpg', bbox_inches='tight')
Sample Program

This code creates a simple line plot and saves it as 'line_plot.png' with 150 dpi quality. The bbox_inches='tight' trims extra space around the plot.

Data Analysis Python
import matplotlib.pyplot as plt

# Create a simple line plot
x = [1, 2, 3, 4, 5]
y = [2, 3, 5, 7, 11]
plt.plot(x, y)
plt.title('Simple Line Plot')

# Save the figure as a PNG file
plt.savefig('line_plot.png', dpi=150, bbox_inches='tight')

print('Figure saved as line_plot.png')
OutputSuccess
Important Notes

Always call plt.savefig() before plt.show() because showing the plot can clear it.

You can save figures in many formats like PNG, JPG, PDF, SVG by changing the file extension.

Use dpi to control image clarity; higher dpi means better quality but larger file size.

Summary

Use plt.savefig() to save your plots as image files.

Choose file format by the file extension you provide.

Set dpi and bbox_inches to control quality and layout.

Practice

(1/5)
1. What is the main function used in Python's matplotlib to save a plot as an image file?
easy
A. plt.show()
B. plt.savefig()
C. plt.plot()
D. plt.save()

Solution

  1. Step 1: Identify the function for saving plots

    The function plt.savefig() is designed to save the current figure to a file.
  2. Step 2: Differentiate from other functions

    plt.show() displays the plot, plt.plot() creates the plot, and plt.save() does not exist.
  3. Final Answer:

    plt.savefig() -> Option B
  4. Quick Check:

    Save plot = plt.savefig() [OK]
Hint: Remember: save figure uses 'savefig' word [OK]
Common Mistakes:
  • Confusing plt.show() with saving
  • Using plt.save() which is not a valid function
  • Thinking plt.plot() saves the figure
2. Which of the following is the correct syntax to save a plot as a PNG file with matplotlib?
easy
A. plt.savefig('plot.png')
B. plt.save('plot.png')
C. plt.savefig(plot.png)
D. plt.savefig('plot')

Solution

  1. Step 1: Check the function name and argument type

    The correct function is plt.savefig() and it requires the filename as a string.
  2. Step 2: Verify the filename format

    The filename must be a string with the extension, e.g., 'plot.png'. plt.savefig('plot.png') matches this exactly.
  3. Final Answer:

    plt.savefig('plot.png') -> Option A
  4. Quick Check:

    Save with filename string = plt.savefig('plot.png') [OK]
Hint: Use quotes around filename with extension [OK]
Common Mistakes:
  • Omitting quotes around filename
  • Using plt.save() instead of plt.savefig()
  • Missing file extension in filename
3. What will be the effect of this code snippet?
import matplotlib.pyplot as plt
plt.plot([1, 2, 3], [4, 5, 6])
plt.savefig('myplot.pdf', dpi=300, bbox_inches='tight')
medium
A. Saves a PNG file named 'myplot.pdf' ignoring dpi and bbox_inches
B. Displays the plot on screen with 300 dpi resolution
C. Raises an error because dpi cannot be set for PDF files
D. Saves a PDF file named 'myplot.pdf' with high resolution and tight layout

Solution

  1. Step 1: Understand plt.savefig parameters

    The code saves the plot as 'myplot.pdf' with dpi=300 for high resolution and bbox_inches='tight' to reduce whitespace.
  2. Step 2: Confirm file format and parameters compatibility

    PDF supports dpi and bbox_inches parameters, so no error occurs and the file is saved correctly.
  3. Final Answer:

    Saves a PDF file named 'myplot.pdf' with high resolution and tight layout -> Option D
  4. Quick Check:

    Save PDF with dpi and tight bbox = correct [OK]
Hint: File extension sets format; dpi and bbox_inches improve quality [OK]
Common Mistakes:
  • Thinking dpi is ignored for PDF
  • Confusing save with display (plt.show())
  • Assuming dpi causes error for PDF
4. Identify the error in this code that tries to save a figure:
import matplotlib.pyplot as plt
plt.plot([1, 2, 3], [4, 5, 6])
plt.savefig(myplot.png)
medium
A. File extension '.png' is invalid
B. plt.plot() must be called after plt.savefig()
C. Missing quotes around filename 'myplot.png'
D. dpi parameter is required in plt.savefig()

Solution

  1. Step 1: Check the argument to plt.savefig()

    The filename must be a string, so it needs quotes around 'myplot.png'.
  2. Step 2: Verify other parts of the code

    Calling plt.plot() before plt.savefig() is correct, dpi is optional, and '.png' is a valid extension.
  3. Final Answer:

    Missing quotes around filename 'myplot.png' -> Option C
  4. Quick Check:

    Filename must be string with quotes [OK]
Hint: Always put filename in quotes when saving [OK]
Common Mistakes:
  • Forgetting quotes around filename
  • Thinking dpi is mandatory
  • Misordering plot and savefig calls
5. You want to save a plot as a high-quality PNG file with minimal white space around it. Which of the following code snippets achieves this correctly?
hard
A.
plt.savefig('figure.png', dpi=600, bbox_inches='tight')
B.
plt.savefig('figure.png', dpi=72, bbox_inches='standard')
C.
plt.savefig('figure.png', dpi=600, bbox_inches='loose')
D.
plt.savefig('figure.png', dpi='high', bbox_inches='tight')

Solution

  1. Step 1: Understand dpi and bbox_inches parameters

    High dpi (e.g., 600) means better image quality. bbox_inches='tight' reduces extra white space.
  2. Step 2: Evaluate each option

    plt.savefig('figure.png', dpi=600, bbox_inches='tight')
    uses dpi=600 and bbox_inches='tight' correctly.
    plt.savefig('figure.png', dpi=72, bbox_inches='standard')
    uses low dpi and invalid bbox_inches.
    plt.savefig('figure.png', dpi=600, bbox_inches='loose')
    uses bbox_inches='loose' which adds space.
    plt.savefig('figure.png', dpi='high', bbox_inches='tight')
    uses invalid dpi value 'high'.
  3. Final Answer:

    plt.savefig('figure.png', dpi=600, bbox_inches='tight') -> Option A
  4. Quick Check:

    High dpi + tight bbox = best quality [OK]
Hint: Use dpi=600 and bbox_inches='tight' for quality and layout [OK]
Common Mistakes:
  • Using invalid dpi values like strings
  • Choosing bbox_inches='loose' which adds whitespace
  • Ignoring dpi leading to low-quality images
Recommended

Ready to prove it?

Pass the test and this pattern moves unknown strong while earning +1 Grip toward your certificate.

10 questions~5 mineasy hard