Getting different plot ranges
2 次查看(过去 30 天)
显示 更早的评论
Trying to get time series plot of different days from dataset. Got help previoulsy but was only able to do day 1, when altering the code for day 2. It did not work. The csv file is opened, then columns are selected: Day 2 is from A61:D353, which then named glucose1_2 and is then imported to the workspace. Trying to get plot such as Day1 below for all remaining days of glucose.csv file.
Day 1 - A2:D60
Day2 - A61:D353
Day 3 - A354:D646
Day 4- A647:D940
Day 5 - A941:D1234
Day 6- A1235:D1439
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/839075/image.png)
glucose1_2.date.Format = 'dd.MM.uuuu HH:mm';
glucose1_2.time.Format = 'hh:mm:ss.S';
glucose1_2.date = [glucose1_2.date glucose1_2.time];
glucose1_2.glucose = glucose1_2.glucose*18;
plot(glucose1_2.date,glucose1_2.glucose);
grid on; legend('Patient1, Day1');
xlabel('Date and Time'); ylabel('Serum Glucose Level (mg/dl)');
0 个评论
采纳的回答
William Rose
2021-12-19
编辑:William Rose
2021-12-19
T=readtable('glucose.csv'); %read file into table T
You will see that T has columns named date, time, glucose.
Line below plots glucose vs. time for the rows which have date=2014-10-01.
plot(T.time(T.date=='2014-10-01'),T.glucose(T.date=='2014-10-01'));
Line below plots glucose vs. time for day 2: the rows which have date=2014-10-02. And so on.
plot(T.time(T.date=='2014-10-02'),T.glucose(T.date=='2014-10-02'));
Good luck with your work!
3 个评论
William Rose
2021-12-20
@Nathaniel Porter, yes you can. Multiply y-values by 18 in the plot command. Include labels with units.
plot(T.time(T.date=='2014-10-02'),18*T.glucose(T.date=='2014-10-02'));
xlabel('Time (hours)'); ylabel('Plasma glucose (mg/dL)');
Try.
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 QSP, PKPD, and Systems Biology 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!