Automatically Change Variable in a Plot

Hi Guys,
I have some variables (D1,D2,D3,...) and I want to draw the graph for them .Since, number of variables are so much, I want to define the plot funtion in such a way that the variable changes automatically. My initial suggestion was to use eval function as follows: plot(eval(['D' num2str(j)])(:,11),D11(:,1),'linewidth',1) But id doesnt work. Could you please let me know any suggestion to solve it.
Cheers,

 采纳的回答

for k=1:3
eval(sprintf('plot(D%d)',k))
hold on
end

3 个评论

Thank you for your reply.It works. Could ou please tell me, if I want to just draw specific numbers of rows and columns, how can I indicate it in this function? For example: plot(D11(:,1),D11(:,2))
Jamaledin, using several variables is not a good idea. you can create one variable
v=[D1;D2;...]
or a cell array
v={D1 D2 ...]
Many thanks for your support Azzi. Your recommendation is completely right. I redefined the arrays as follows and It works:
for i=1:11 D{i} = a(6+L(1,i):5+L(1,(i+1)),:); end
plot(D{i}(:,11),D{i}(:,1),'linewidth',1)
Many thanks for your replies. Best Regards, Jamaledin

请先登录,再进行评论。

更多回答(0 个)

类别

帮助中心File Exchange 中查找有关 Creating, Deleting, and Querying Graphics Objects 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by