How can I resolve this error?
1 次查看(过去 30 天)
显示 更早的评论
I have written this code:
figure
name = 'cap_';
vector = {'T0' 'T1' 'T2' 'T3' 'T4' 'T5' 'T6' 'T7' T8' 'T9'};
for i=1:length(vector)
name_1 = strcat(name, vector(i));
name_1 = char(name_1);
plot(x, sscanf(name_1, '%s'), 'y');
hold on
name_1 = [];
end
When I run this code I receive this message error: There is no cap_T1 property on the Line class
If I use:
plot(x, sscanf(name_1, '%s')) I receive this other message: Error in color/linetype argument
Help me please.
Thanks
3 个评论
回答(1 个)
Walter Roberson
2017-9-30
5 个评论
Walter Roberson
2017-10-1
It is better to avoid creating numbered variables and to create indexed variables instead. But if you do for some reason have numbered variables then instead of creating variable names at run-time, it is better to take the one-time hit of putting the variables together into an array and after that index the array.
frequencies = {frequency_1, frequency_2, frequency_3, frequency_4, frequency_5, frequency_6, frequency_7, frequency_8, frequency_9, frequency_10};
caps = {cap_1, cap_2, cap_3, cap_4, cap_5, cap_6, cap_7, cap_8, cap_9, cap_10};
names = cellstr( num2str((1:10).', 'line #%d') );
for K = 1 : length(frequencies)
plot(frequencies{K}, caps{K});
hold on
end
legend(names);
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Matrix Indexing 的更多信息
产品
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!