2013-05-20 39 views
21

Tôi đang đến Python và numpy và matplotlib từ một nền Matlab. Một hàm trong MATLAB mà tôi sử dụng mọi lúc là imagesc. Có một tương đương chính xác này ở đâu đó trong matplotlib? Tôi biết về imshowpcolor, nhưng trước tiên không cho phép bạn dễ dàng đặt đơn vị của các trục như imagesc và thứ hai làm cho bạn đặt tọa độ x và y của ranh giới pixel, thay vì các trung tâm các pixel mà tôi không thấy trực quan. Về cơ bản, nếu tôi có một hình ảnh mà tôi muốn hiển thị với nhãn x và trục y không phải là số pixel nhưng là số, như khoảng cách tính bằng mm, cách dễ nhất để làm điều đó trong matplotlib là gì?Tương đương với hình ảnh của MATLAB trong matplotlib?

Trả lời

16

Bạn muốn extent kwarg

ax.imshow(data, extent=[0, 1, 0, 1]) 

Xem Imshow: extent and aspect cho một ví dụ chi tiết hơn.

+0

Điều đó hữu ích, cảm ơn bạn, tôi đã bỏ qua điều đó trong tài liệu imshow. Có vẻ như mức độ arg đặt tọa độ của các cạnh của hình ảnh, phải không? Vì vậy, một nhiệm vụ mà điều này không giải quyết là gán tọa độ cho các trung tâm của pixel, nếu đó là những gì tôi muốn làm. – Matt

+1

Từ tài liệu 'mức độ':" Giới hạn dữ liệu cho các trục. Giá trị mặc định gán hàng không, cột chỉ số cho các trung tâm x, y của pixel ". Nó làm những gì bạn muốn theo mặc định. Điều đó nói rằng, tôi nghĩ rằng nó có thể đã thay đổi giữa các phiên bản mpl tại một số điểm. – tacaswell

+0

Vâng, tôi có nghĩa là gán tọa độ của sự lựa chọn của tôi cho các trung tâm pixel, không chỉ số pixel. – Matt

Các vấn đề liên quan