Main Content


Convert numeric data for use with specific ruler



data = num2ruler(num,ruler) converts the numeric values in num to the appropriate values for the specified ruler. The resulting values depend on both the type and limits of the ruler input. The output data is an array the same size as num.


collapse all

Convert the output of ginput from a numeric value to the equivalent date value.

Create a plot with dates along the x-axis. Then, click a point in the axes and use the ginput function to return the location of the selected point.

t = datetime(2015,1,1:10);
y = rand(10,1);
ax = gca;
[x,y] = ginput(1)

x =


y =


The ginput function returns the location as numeric values. Use num2ruler to determine the date value that is equivalent to the numeric value returned for x.

xdate = num2ruler(x,ax.XAxis)
xdate = 

   06-Jan-2015 19:36:13

Input Arguments

collapse all

Numeric data, specified as an array.

Example: num = [1 2 3]

Ruler that determines data mapping, specified as one of these types of ruler objects:

  • DurationRuler object — Convert the values in num to duration values.

  • DatetimeRuler object — Convert the values in num to datetime values. To control how numeric values are converted to datetime values, set the ReferenceDate property of the ruler to a datetime value with the desired time zone.

  • NumericRuler object — No conversion. The output is equal to the input.

  • CategoricalRuler object — Convert the values in num to categorical values. To control the order of the categories, set the Categories property of the ruler.

  • GeographicRuler object — No conversion. The output is equal to the input.

Specify the ruler object as the XAxis, YAxis, or ZAxis property of the Axes object. For example:

ax = gca;
data = num2ruler(num,ax.XAxis)

Version History

Introduced in R2016b