This is machine translation

Translated by Microsoft
Mouse over text to see original. Click the button below to return to the English verison of the page.


Convert axes coordinates to pixel coordinates


pixelx = axes2pix(dim, XDATA, AXESX)


pixelx = axes2pix(dim, XDATA, AXESX) converts an axes coordinate into an intrinsic ("pixel") coordinate. For example, if pt = get(gca,'CurrentPoint') then AXESX could be pt(1,1) or pt(1,2). AXESX must be in intrinsic coordinates. XDATA is a two-element vector returned by get(image_handle, 'XData') or get(image_handle,'YData'). dim is the number of image columns for the x coordinate, or the number of image rows for the y coordinate.

Class Support

dim, XDATA, and AXESX can be double. The output is double.


axes2pix performs minimal checking on the validity of AXESX, DIM, or XDATA. For example, axes2pix returns a negative coordinate if AXESX is less than XDATA(1). The function calling axes2pix bears responsibility for error checking.


Example with default XData and YData.

h = imshow('pout.tif');
[nrows,ncols] = size(get(h,'CData'));
xdata = get(h,'XData')
ydata = get(h,'YData')
px = axes2pix(ncols,xdata,30)
py = axes2pix(nrows,ydata,30)

Example with non-default XData and YData.

xdata = [10 100]
ydata = [20 90]
px = axes2pix(ncols,xdata,30)
py = axes2pix(nrows,ydata,30)

Introduced before R2006a

Was this topic helpful?