我在使用点符号应用方法后尝试引用对象属性时遇到问题.它只发生在我尝试索引初始对象时
classdef myclassexample
properties
data
end
methods
function obj = procData(obj)
if numel(obj)>1
for i = 1:numel(obj)
obj(i) = obj(i).procData;
end
return
end
%do some processing
obj.data = abs(obj.data);
end
end
end
Run Code Online (Sandbox Code Playgroud)
然后分配以下内容
A = myclassexample;
A(1).data= - -1;
A(2).data = -2;
Run Code Online (Sandbox Code Playgroud)
当调用整个数组并收集属性数据时,它工作正常
[A.procData.data]
Run Code Online (Sandbox Code Playgroud)
如果我尝试索引A然后我只得到一个标量
[A([1 2]).procData.data]
Run Code Online (Sandbox Code Playgroud)
即使没有财产电话似乎没事
B = A([1 2]).procData;
[B.data]
Run Code Online (Sandbox Code Playgroud)
有任何想法吗?
有没有办法在Matlab中的轴刻度标签中创建一个新行以生成多行刻度标签?
这里针对其他文本元素的两个建议似乎不起作用:
set(gca,'xticklabel',{{'line1','line2'}})
Run Code Online (Sandbox Code Playgroud)
失败了
set(gca,'xticklabel',{['line1' 10 'line2']})
Run Code Online (Sandbox Code Playgroud)
要么
set(gca,'xticklabel',{['line1' 13 'line2']})
Run Code Online (Sandbox Code Playgroud)
忽略换行符或回车符.有任何想法吗?