Trong Python và Matplotlib, thật dễ dàng hiển thị ô như cửa sổ bật lên hoặc lưu cốt truyện dưới dạng tệp PNG. Làm thế nào tôi có thể thay thế lưu âm mưu vào một mảng numpy ở định dạng RGB?Matplotlib: lưu cốt truyện thành mảng có nhiều mảng
15
A
Trả lời
35
Đây là mẹo hữu ích cho các bài kiểm tra đơn vị và tương tự, khi bạn cần thực hiện so sánh pixel-điểm ảnh với một ô đã lưu.
Một cách là sử dụng fig.canvas.tostring_rgb
và sau đó là numpy.fromstring
với kiểu chữ approriate. Có nhiều cách khác nữa, nhưng đây là cách tôi có xu hướng sử dụng.
Ví dụ:
import matplotlib.pyplot as plt
import numpy as np
# Make a random plot...
fig = plt.figure()
fig.add_subplot(111)
# If we haven't already shown or saved the plot, then we need to
# draw the figure first...
fig.canvas.draw()
# Now we can save it to a numpy array.
data = np.fromstring(fig.canvas.tostring_rgb(), dtype=np.uint8, sep='')
data = data.reshape(fig.canvas.get_width_height()[::-1] + (3,))
Các vấn đề liên quan
- 1. Matplotlib cốt truyện là một no-show
- 2. Matplotlib: cốt truyện tương tác trên máy chủ web
- 3. Matplotlib savefig với một huyền thoại bên ngoài cốt truyện
- 4. biểu đồ cốt truyện của datetime.time python/matplotlib
- 5. Tự động cập nhật cốt truyện trong matplotlib
- 6. matplotlib dòng dòng 2d, = cốt truyện dấu phẩy nghĩa
- 7. Loại bỏ mép trắng trong cốt truyện pcolor/basemap Matplotlib
- 8. Matplotlib: Nhiều bộ dữ liệu trên phân tán cùng một cốt truyện
- 9. Thay thế cốt truyện (x, y) thành matplotlib bằng Python là gì?
- 10. cốt truyện không được xác định
- 11. rpy2: Chuyển đổi một data.frame thành mảng có nhiều mảng
- 12. Colorplot của mảng 2D matplotlib
- 13. R cốt truyện tương tác?
- 14. Formatting của cốt truyện persp3d
- 15. cốt truyện vlines với matplotlib.pyplot
- 16. Làm thế nào để tạo ra một cốt truyện mật độ trong matplotlib?
- 17. Tôi có thể chú thích một mảng có nhiều mảng khi lưu nó với savez
- 18. Thứ tự mảng đường viền đầu vào matplotlib
- 19. điểm chú thích từ một Pandas Dataframe trong Matplotlib cốt truyện
- 20. Lưu trữ và tải các mảng có nhiều mảng như các tập tin
- 21. Python: 2d đường viền cốt truyện từ 3 danh sách: x, y và rho?
- 22. igraph trục cốt truyện ylim xlim sai
- 23. Ternary cốt truyện và điền đường viền
- 24. cốt truyện tích lũy bằng ggplot2
- 25. cốt truyện python và powerlaw phù hợp
- 26. cốt truyện 3D hấp dẫn trong R
- 27. Crash khi instantiating ViewController khỏi Cốt truyện
- 28. ggplot2 mũi tên cốt truyện cực
- 29. Ruby: xây dựng cốt truyện chức năng
- 30. matlab - biến trong tiêu đề cốt truyện
Tuyệt vời! 12345 – Petter
Điều này chỉ được hỗ trợ trên một số chương trình phụ trợ nhất định? Dường như không hoạt động với chương trình phụ trợ 'macosx' (' tostring_rgb') không tìm thấy. – mirosval
Hoạt động trên Agg, thêm 'matplotlib.use ('agg')' trước khi nhập khẩu matplotlib.pyplot là plt' để sử dụng nó. – mirosval