how to use plotyy with x-axis cell data type ruther than double.
Show older comments
I would like to plot a double axis figure using plotyy. the x-axis is cell type while the two y-axises are double type
x={10:00; 11:00; 12:00; 13:00}
y1=[1 2 3 4]
y2=[4 5 6 7]
Answers (1)
I assume that x is not a cell array of empty arrays, as in:
x={10:00; 11:00; 12:00; 13:00}
but rather a cell array of datetimes, as in:
x=num2cell(datetime({'10:00'; '11:00'; '12:00'; '13:00'},'InputFormat','HH:mm','Format','HH:mm'))
In that case, you can plot like this:
y1=[1 2 3 4]
y2=[4 5 6 7]
x_plot = [x{:}]
plotyy(x_plot, y1, x_plot, y2)
3 Comments
Elias Salilih
on 10 Aug 2023
Moved: Voss
on 10 Aug 2023
% a cell array of character vectors:
tim = {
'10:00'
'10:15'
'10:30'
'10:45'
'11:00'
'11:15'
'11:30'
'11:45'
'12:00'
'12:15'
'12:30'
'12:45'
'13:00'
'13:15'
'13:30'
'13:45'
'14:00'
};
% convert to a datetime array:
x = datetime(tim,'InputFormat','HH:mm');
% some y values to plot with
y1=1:numel(x);
y2=3:numel(x)+2;
% plot
plotyy(x, y1, x, y2)
Voss
on 15 Aug 2023
@Elias Salilih: Did this answer work for you?
Categories
Find more on Characters and Strings in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!
