Drawing Vertical Lines in a datetime plot

3 ビュー (過去 30 日間)
Rainer
Rainer 2016 年 12 月 29 日
回答済み: Walter Roberson 2016 年 12 月 29 日
Executing the script below gives a nice graph.
x = datetime({'2014-05-25';'2014-05-26';'2014-05-27';'2014-05-28';'2014-05-29'});
y=[130, 135, 120, 130, 130];
plot(x,y);
Now, I want vertical lines on certain days to mark events. How can I do this?

採用された回答

Star Strider
Star Strider 2016 年 12 月 29 日
Here is how I did it a few days ago in my Answer to a similar Question:
% Make example time series data
t = datetime(2014,6,28) + calweeks(0:9);
y = rand(1,10);
plot(t,y); % Plot time series data
hold on;
tMark = datetime(2014,8,1); % Time to mark by a vertical line
plot([tMark tMark], ylim);
You can easily adapt this to your reuqirements.

その他の回答 (1 件)

Walter Roberson
Walter Roberson 2016 年 12 月 29 日
YL = reshape(get(gca, 'YLim'), [], 1);
which_day = reshape(x([2 4]), 1, []);
hold on
plot([which_day; which_day], repmat(YL, 1, length(which_day)))
hold off

タグ

Community Treasure Hunt

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

Start Hunting!

Translated by