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
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에서 Data Import and Analysis에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!