หากต้องการเปลี่ยนขนาดของ imshow ใน matplotlib โดยไม่ต้องขยายรูปภาพ เราสามารถทำตามขั้นตอนต่อไปนี้ได้
ขั้นตอน
-
กำหนดขนาดรูปและปรับช่องว่างภายในระหว่างและรอบๆ แผนผังย่อย
-
สร้างจุดข้อมูลแบบสุ่มด้วยมิติ 4×4
-
แสดงข้อมูลเป็นรูปภาพ เช่น บนแรสเตอร์ปกติ 2 มิติ
-
ใช้ ขอบเขต พารามิเตอร์ของ imshow เพื่อจับคู่พิกัดพิกเซลบัฟเฟอร์บัฟเฟอร์รูปภาพกับระบบพิกัดพื้นที่ข้อมูล
-
ถัดไป กำหนดอัตราส่วนภาพของรูปภาพด้วยตนเองโดยป้อนค่า เช่น "aspect=4" หรือปล่อยให้ปรับขนาดอัตโนมัติโดยใช้ aspect='auto' . วิธีนี้จะช่วยป้องกันการยืดของภาพ โดยค่าเริ่มต้น imshow จะกำหนดลักษณะของพล็อตเป็น 1
-
หากต้องการแสดงรูป ให้ใช้ แสดง() วิธีการ
ตัวอย่าง
import numpy as np from matplotlib import pyplot as plt plt.rcParams["figure.figsize"] = [7.00, 3.50] plt.rcParams["figure.autolayout"] = True data = np.random.rand(4, 4) plt.imshow(data, origin='lower', extent=[-4, 4, -1, 1], aspect=4) plt.show()
ผลลัพธ์
มันจะสร้างผลลัพธ์ต่อไปนี้ -