Plotting of 15 years data on same graph.
3 ビュー (過去 30 日間)
古いコメントを表示
I have data of 15 years as i have attached here, which has the format as: Date, time, Pressure data, Temperature Data.
I want to plot the temperature dataset year over year, lets say on x-axis january-december is labeled i want to plot each year data (just Temperature) with different colored plots on the same graph.
Thanks in advance
2 件のコメント
採用された回答
meghannmarie
2019 年 12 月 11 日
Try something like this:
fid = fopen('Mod21_All_Inclusive_Data_Nov2019.txt');
Mod = textscan(fid,'%s %s %n %n');
fclose(fid); % Close the file
Temp = Mod{3};
DMY =cellstr(Mod{1});
HM = cellstr(Mod{2});
DMYHM = datetime(DMY,'InputFormat','MM/dd/yy') + duration(HM,'InputFormat','hh:mm');
Y = year(DMYHM);
yrs = unique(Y);
x_axis = day(DMYHM,'dayofyear') + (hour(DMYHM) + (minute(DMYHM)/60))/24;
fig = figure;
hold on
for t = 1:numel(yrs)
yr = yrs(t);
idx = yr == Y;
plot(x_axis(idx),Temp(idx));
end
XTicks = nan(1,12);
XTickLabels = cell(12,1);
for n = 1:12
dt = datetime(2019,n,01);
XTicks(n) = day(dt,'dayofyear');
XTickLabels(n) = month(dt,'name');
end
ax = gca;
ax.XTick = XTicks;
ax.XTickLabel = XTickLabels;
fclose(fid);
8 件のコメント
dpb
2019 年 12 月 12 日
"If you do not like those long lines connecting the data gaps, you can identify the data gaps and plot those lines separately."
Or fill missing data w/ NaN and will be silently ignored by plot. Still takes finding the breakpoints but would keep one line handle per year for things like legend, linestyle etc., ...
その他の回答 (1 件)
Hiro Yoshino
2019 年 12 月 11 日
Convert the date information to datetime type and extract just "months" and "days" using the functions, "month" and "day".
This way, you can remove "year" information from your dataset and thus you can line them up in the same x-axis.
6 件のコメント
dpb
2019 年 12 月 11 日
Use the new_timedata vector as x, the array of data by column as y and plot will automagically do the rest...
Have you tried anything? This is a cooperative venture, show us what you have done.
参考
カテゴリ
Help Center および File Exchange で Dates and Time についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!