How do I create a multiline plot using values from a table?

조회 수: 39 (최근 30일)
Aryan Cross
Aryan Cross 2020년 11월 12일
댓글: Nora Khaled 2020년 11월 13일
For example, I have a table:
User Date1 Date2 ....(I have 500+ dates)
{'A'} 1 6 ...
{'B'} 2 8 ...
{'C'} 3 9 ...
{'D'} 4 11 ...
The dates would be located in the x-axis and the values would be in the y-axis. Each user would be a separate line on that graph. I was thinking of converting it to an array and then attempting to plot that but that method does not seem to be working since I have different types of data in this table. What would be the most efficient way of doing this?
  댓글 수: 4
Subhadeep Koley
Subhadeep Koley 2020년 11월 12일
Aryan Cross what all "different types of data" your table has?
In order to plot a particular value (for a certain user and date), the value needs to be numeric. And if values are numeric then converting them to array before plotting seems an efficient way.
Aryan Cross
Aryan Cross 2020년 11월 12일
I have cells in my first column but the rest is double.

댓글을 달려면 로그인하십시오.

답변 (1개)

Nora Khaled
Nora Khaled 2020년 11월 12일
If I understand the problem correctly this might help
% creating tabel exampel
col1 = {'A';'B';'C';'D';'E'};
col2 = [1:1:5]';
col3 = randi(5,5,1);
col4 = randi(5,5,1);
col5 = randi(5,5,1);
col6 = randi(5,5,1);
my_table = table(col1,col2,col3,col4,col5,col6);
%plot data for each user
[r,c]=size(my_table);
for i=2:1:r
plot(my_table{i,2:end});
hold on;
end
legend(my_table{:,1});
  댓글 수: 8
Aryan Cross
Aryan Cross 2020년 11월 12일
In the example, the x-axis goes from col2 to col6 and restarts from col2 again. I would like it to go from col2 all the way to colx without repeating
Nora Khaled
Nora Khaled 2020년 11월 13일
Ok... try this:
set(gca,'XTick',1:length(my_table.Properties.VariableNames(2:end)),'XTickLabel',my_table.Properties.VariableNames(2:end), 'XTickLabelRotation',45)
Also, change the loop vaiable to start from 1 :
for i=1:1:r
plot(my_table{i,2:end});
hold on;
end

댓글을 달려면 로그인하십시오.

카테고리

Help CenterFile Exchange에서 Annotations에 대해 자세히 알아보기

태그

제품


릴리스

R2020a

Community Treasure Hunt

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

Start Hunting!

Translated by