Làm cách nào để lưu nhiều ô dưới dạng hình ảnh trong python?

Matplotlib là một trong những thư viện trực quan hóa dữ liệu được sử dụng rộng rãi nhất trong Python. Các sơ đồ và trực quan hóa Matplotlib thường được chia sẻ với những người khác, có thể là qua giấy tờ hoặc trực tuyến

Trong bài viết này, chúng ta sẽ xem cách lưu một biểu đồ/đồ thị dưới dạng tệp hình ảnh bằng Matplotlib

Tạo một âm mưu

Trước tiên hãy tạo một cốt truyện đơn giản

import matplotlib.pyplot as plt
import numpy as np

x = np.arange(0, 10, 0.1)
y = np.sin(x)

plt.plot(x, y)
plt.show()

Ở đây, chúng ta đã vẽ một hàm sin, bắt đầu từ

import matplotlib.pyplot as plt
import numpy as np

x = np.arange(0, 10, 0.1)
y = np.sin(x)

plt.plot(x, y)
plt.savefig('saved_figure.png')
1 và kết thúc ở
import matplotlib.pyplot as plt
import numpy as np

x = np.arange(0, 10, 0.1)
y = np.sin(x)

plt.plot(x, y)
plt.savefig('saved_figure.png')
2 với bước là
import matplotlib.pyplot as plt
import numpy as np

x = np.arange(0, 10, 0.1)
y = np.sin(x)

plt.plot(x, y)
plt.savefig('saved_figure.png')
3. Chạy mã này mang lại

Bây giờ, hãy xem làm thế nào chúng ta có thể lưu con số này dưới dạng hình ảnh

Lưu cốt truyện dưới dạng hình ảnh trong Matplotlib

Trong ví dụ trước, chúng tôi đã tạo biểu đồ thông qua hàm

import matplotlib.pyplot as plt
import numpy as np

x = np.arange(0, 10, 0.1)
y = np.sin(x)

plt.plot(x, y)
plt.savefig('saved_figure.png')
0, chuyển dữ liệu mà chúng tôi muốn trực quan hóa

Biểu đồ này được tạo, nhưng không được hiển thị cho chúng tôi, trừ khi chúng tôi gọi hàm

import matplotlib.pyplot as plt
import numpy as np

x = np.arange(0, 10, 0.1)
y = np.sin(x)

plt.plot(x, y)
plt.savefig('saved_figure.png')
1. Hàm
import matplotlib.pyplot as plt
import numpy as np

x = np.arange(0, 10, 0.1)
y = np.sin(x)

plt.plot(x, y)
plt.savefig('saved_figure.png')
1, đúng như tên gọi, hiển thị biểu đồ được tạo cho người dùng trong một cửa sổ

Sau khi được tạo, chúng ta cũng có thể lưu hình/đồ thị này dưới dạng tệp - sử dụng hàm

import matplotlib.pyplot as plt
import numpy as np

x = np.arange(0, 10, 0.1)
y = np.sin(x)

plt.plot(x, y)
plt.savefig('saved_figure.png')
3

import matplotlib.pyplot as plt
import numpy as np

x = np.arange(0, 10, 0.1)
y = np.sin(x)

plt.plot(x, y)
plt.savefig('saved_figure.png')

Bây giờ, khi chúng tôi chạy mã, thay vì một cửa sổ bật lên với cốt truyện, chúng tôi có một tệp (

import matplotlib.pyplot as plt
import numpy as np

x = np.arange(0, 10, 0.1)
y = np.sin(x)

plt.plot(x, y)
plt.savefig('saved_figure.png')
4) trong thư mục dự án của chúng tôi

Tệp này chứa chính xác hình ảnh mà chúng tôi sẽ hiển thị trong cửa sổ

Điều đáng chú ý là hàm

import matplotlib.pyplot as plt
import numpy as np

x = np.arange(0, 10, 0.1)
y = np.sin(x)

plt.plot(x, y)
plt.savefig('saved_figure.png')
3 không phải là duy nhất đối với trường hợp
import matplotlib.pyplot as plt
import numpy as np

x = np.arange(0, 10, 0.1)
y = np.sin(x)

plt.plot(x, y)
plt.savefig('saved_figure.png')
6. Bạn cũng có thể sử dụng nó trên đối tượng
import matplotlib.pyplot as plt
import numpy as np

x = np.arange(0, 10, 0.1)
y = np.sin(x)

plt.plot(x, y)
plt.savefig('saved_figure.png')
7

import matplotlib.pyplot as plt
import numpy as np

x = np.arange(0, 10, 0.1)
y = np.sin(x)

plt.plot(x, y)
plt.savefig('saved_figure.png')
0

Hàm

import matplotlib.pyplot as plt
import numpy as np

x = np.arange(0, 10, 0.1)
y = np.sin(x)

plt.plot(x, y)
plt.savefig('saved_figure.png')
3 có đối số
import matplotlib.pyplot as plt
import numpy as np

x = np.arange(0, 10, 0.1)
y = np.sin(x)

plt.plot(x, y)
plt.savefig('saved_figure.png')
9 bắt buộc. Ở đây, chúng tôi đã chỉ định tên tệp và định dạng

Ngoài ra, nó chấp nhận các tùy chọn khác, chẳng hạn như

import matplotlib.pyplot as plt
import numpy as np

x = np.arange(0, 10, 0.1)
y = np.sin(x)

plt.plot(x, y)
plt.savefig('saved_figure.png')
00,
import matplotlib.pyplot as plt
import numpy as np

x = np.arange(0, 10, 0.1)
y = np.sin(x)

plt.plot(x, y)
plt.savefig('saved_figure.png')
01,
import matplotlib.pyplot as plt
import numpy as np

x = np.arange(0, 10, 0.1)
y = np.sin(x)

plt.plot(x, y)
plt.savefig('saved_figure.png')
02,
import matplotlib.pyplot as plt
import numpy as np

x = np.arange(0, 10, 0.1)
y = np.sin(x)

plt.plot(x, y)
plt.savefig('saved_figure.png')
03, v.v.

Chúng ta sẽ xem qua một số tùy chọn phổ biến trong các phần tiếp theo

Đặt DPI hình ảnh

Thông số DPI xác định số chấm (pixel) trên mỗi inch. Đây thực chất là độ phân giải của hình ảnh chúng tôi đang sản xuất. Hãy thử nghiệm một vài tùy chọn khác nhau

import matplotlib.pyplot as plt
import numpy as np

x = np.arange(0, 10, 0.1)
y = np.sin(x)

plt.plot(x, y)
plt.savefig('saved_figure.png')
7

Điều này dẫn đến ba tệp hình ảnh mới trên máy cục bộ của chúng tôi, mỗi tệp có một DPI khác nhau

Hãy xem hướng dẫn thực hành, thực tế của chúng tôi để học Git, với các phương pháp hay nhất, tiêu chuẩn được ngành chấp nhận và bao gồm bảng gian lận. Dừng các lệnh Git trên Google và thực sự tìm hiểu nó

Giá trị mặc định là

import matplotlib.pyplot as plt
import numpy as np

x = np.arange(0, 10, 0.1)
y = np.sin(x)

plt.plot(x, y)
plt.savefig('saved_figure.png')
04

Lưu hình ảnh trong suốt với Matplotlib

Đối số

import matplotlib.pyplot as plt
import numpy as np

x = np.arange(0, 10, 0.1)
y = np.sin(x)

plt.plot(x, y)
plt.savefig('saved_figure.png')
01 có thể được sử dụng để tạo một biểu đồ có nền trong suốt. Điều này hữu ích nếu bạn sẽ sử dụng hình ảnh cốt truyện trong bản trình bày, trên giấy hoặc muốn trình bày nó trong cài đặt thiết kế tùy chỉnh

import matplotlib.pyplot as plt
import numpy as np

x = np.arange(0, 10, 0.1)
y = np.sin(x)

plt.plot(x, y)
plt.savefig('saved_figure.png')
0

Nếu chúng ta đặt hình ảnh này trên nền tối, nó sẽ dẫn đến

Thay đổi màu ô

Bạn có thể thay đổi màu khuôn mặt bằng cách sử dụng đối số

import matplotlib.pyplot as plt
import numpy as np

x = np.arange(0, 10, 0.1)
y = np.sin(x)

plt.plot(x, y)
plt.savefig('saved_figure.png')
06. Nó chấp nhận một
import matplotlib.pyplot as plt
import numpy as np

x = np.arange(0, 10, 0.1)
y = np.sin(x)

plt.plot(x, y)
plt.savefig('saved_figure.png')
07 và mặc định là
import matplotlib.pyplot as plt
import numpy as np

x = np.arange(0, 10, 0.1)
y = np.sin(x)

plt.plot(x, y)
plt.savefig('saved_figure.png')
08

Hãy thay đổi nó thành

import matplotlib.pyplot as plt
import numpy as np

x = np.arange(0, 10, 0.1)
y = np.sin(x)

plt.plot(x, y)
plt.savefig('saved_figure.png')
09

import matplotlib.pyplot as plt
import numpy as np

x = np.arange(0, 10, 0.1)
y = np.sin(x)

plt.plot(x, y)
plt.savefig('saved_figure.png')
5

Kết quả này trong

Đặt hộp viền hình ảnh

Đối số

import matplotlib.pyplot as plt
import numpy as np

x = np.arange(0, 10, 0.1)
y = np.sin(x)

plt.plot(x, y)
plt.savefig('saved_figure.png')
02 chấp nhận một chuỗi và chỉ định đường viền xung quanh hộp chúng tôi đang vẽ. Nếu chúng tôi muốn đặt nó là
import matplotlib.pyplot as plt
import numpy as np

x = np.arange(0, 10, 0.1)
y = np.sin(x)

plt.plot(x, y)
plt.savefig('saved_figure.png')
71, tôi. e. để cắt xung quanh hộp càng nhiều càng tốt, chúng ta có thể đặt đối số
import matplotlib.pyplot as plt
import numpy as np

x = np.arange(0, 10, 0.1)
y = np.sin(x)

plt.plot(x, y)
plt.savefig('saved_figure.png')
02 thành
import matplotlib.pyplot as plt
import numpy as np

x = np.arange(0, 10, 0.1)
y = np.sin(x)

plt.plot(x, y)
plt.savefig('saved_figure.png')
73

import matplotlib.pyplot as plt
import numpy as np

x = np.arange(0, 10, 0.1)
y = np.sin(x)

plt.plot(x, y)
plt.savefig('saved_figure.png')
0

Điều này dẫn đến một hộp đóng gói chặt chẽ. Điều này sẽ dễ hình dung hơn nếu chúng ta tô màu khuôn mặt bằng một màu khác để tham khảo

Phần kết luận

Trong hướng dẫn này, chúng tôi đã giới thiệu một số cách để lưu biểu đồ dưới dạng tệp hình ảnh bằng Matplotlib

Nếu bạn quan tâm đến Trực quan hóa dữ liệu và không biết bắt đầu từ đâu, hãy nhớ xem gói sách của chúng tôi về Trực quan hóa dữ liệu trong Python

Trực quan hóa dữ liệu bằng Python với Matplotlib và Pandas là một cuốn sách được thiết kế dành cho những người mới bắt đầu làm quen với Pandas và Matplotlib, với kiến ​​thức cơ bản về Python và cho phép họ xây dựng nền tảng vững chắc để làm việc nâng cao với các thư viện luận văn - từ các biểu đồ đơn giản đến các biểu đồ 3D hoạt hình có tính tương tác

Nó phục vụ như một hướng dẫn chuyên sâu, sẽ dạy cho bạn mọi thứ bạn cần biết về Pandas và Matplotlib, bao gồm cả cách xây dựng các loại cốt truyện không được tích hợp sẵn trong thư viện

Trực quan hóa dữ liệu trong Python, một cuốn sách dành cho các nhà phát triển Python từ sơ cấp đến trung cấp, hướng dẫn bạn cách thao tác dữ liệu đơn giản với Pandas, bao gồm các thư viện vẽ đồ thị cốt lõi như Matplotlib và Seaborn, đồng thời chỉ cho bạn cách tận dụng các thư viện thử nghiệm và khai báo như Altair. Cụ thể hơn, trong khoảng 11 chương, cuốn sách này bao gồm 9 thư viện Python. Pandas, Matplotlib, Seaborn, Bokeh, Altair, Plotly, GGPlot, GeoPandas và VisPy

Nó phục vụ như một hướng dẫn thực tế, độc đáo về Trực quan hóa dữ liệu, trong rất nhiều công cụ bạn có thể sử dụng trong sự nghiệp của mình