Tôi có một mảng NxN và tôi đang sử dụng matplotlib.pyplot.imshow()
Vẽ nó bằng Python. N sẽ rất lớn và tôi muốn hình ảnh cuối cùng của mình có độ phân giải phù hợp. Tuy nhiên, trong đoạn mã sau, độ phân giải hình ảnh dường như không thay đổi khi N tăng. tôi nghĩ imshow()
(Ít nhất là cách tôi sử dụng nó) Có kích thước pixel tối thiểu cố định lớn hơn mức cần thiết để hiển thị mảng NxN của tôi ở độ phân giải đầy đủ.
nhập numpy dưới dạng np
nhập matplotlib.pyplot dưới dạng plt
từ cm nhập khẩu matplotlib
mảng = np.loadtxt("output.dat",unpack=True)
plt.figsize=(30.0, 30.0)
im = plt.imshow(array,cmap='hot')
plt.colorbar(im)
plt.savefig("mandelbrot.pdf")
Như bạn có thể thấy trong đoạn mã trên, tôi đã thử sử dụng plt.figsize
Tôi đã thử tăng độ phân giải nhưng không có kết quả. Tôi cũng đã thử nhiều định dạng đầu ra khác nhau (.pdf, .ps, .eps, .png), nhưng tất cả các định dạng hình ảnh đầu ra này đều có độ phân giải hình ảnh đầu ra thấp hơn mức tôi muốn. Hình ảnh .ps, .eps và .pdf trông giống hệt nhau.
Đầu tiên,imshow()
Có điều gì đó không ổn xảy ra với tôi hoặc có khía cạnh nào khác trong mã của tôi cần được thay đổi để tạo ra hình ảnh có độ phân giải cao hơn không?
Thứ hai, làm thế nào để tạo ra hình ảnh có độ phân giải cao hơn?
plt.figsize()
Sẽ chỉ thay đổi kích thước đồ họa tính bằng inch trong khi vẫn giữ dpi mặc định. Bạn có thể lưu biểu đồ bằng cách chuyển dpi
Đối số từ khóa để đặt độ phân giải của đồ họa:
fig.savefig('filename.extension', dpi=XXX)
Vì vậy, nếu bạn có kích thước đồ họa 4x6 và sử dụng dpi=300
Lưu nó và bạn sẽ có một hình ảnh có độ phân giải 1200x1800.
您还可以使用 matplotlibrc
Đặt kích thước đồ họa và dpi mặc định.
Tôi là một lập trình viên xuất sắc, rất giỏi!