I want to scale each pixel width and height in imagesc but not use pcolor command

10 次查看(过去 30 天)
Hello,
I want to scale each pixel width and height in imagesc but not use pcolor command. The reason I don't want to use pcolor is it plots the center of each (x1-x2) and (y1-y2). Is there any adjustments in imagesc that plot an image with different pixel sizes according to x and y values?
Thanks Farz

采纳的回答

Walter Roberson
Walter Roberson 2016-8-17
imagesc() accepts 'XData' and 'YData' parameter, which together allow you to control the data coordinates of the center of the lower-left and upper-right pixels. The axes properties XLim, YLim, DataAspectRatio, Position, and Units then work together to determine the mapping of data coordinates to physical screen coordinates.
For example if you had arranged for a square plotting box area, and you had a square data array, then using imagesc() 'XData' [0 10], 'YData', [0 20] would place the center of the lower left at [0 0] and the center of the upper right at [10 20] which would have the effect of making the Y scale twice as large as the X scale for the image.
  5 个评论
Walter Roberson
Walter Roberson 2016-8-19
I = rand(32,32); imagesc(I, 'XData', [.5 32.5], 'YData', [.5 65]); axis image
The pixels that come out will not be square.
Farz Tak
Farz Tak 2016-8-19
Thanks but as you see this scale the width and height of the whole plot. What I am looking for is what that can draw each pixel based on its x and y (like what we have in all 1-D plots).

请先登录,再进行评论。

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Images 的更多信息

产品

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by