0
返回一个错误,我想散点图被存储为结构数据类型的数据。传递结构散射功能的MATLAB
scatter(1,1, ...
'ApplicationData', lin_data.ApplicationData, ...
'CData', lin_data.CData, ...
'CDataSource', lin_data.CDataSource, ...
'Jitter', lin_data.Jitter, ...
'JitterAmount', lin_data.JitterAmount, ...
'LineWidth', lin_data.LineWidth, ...
'Marker', lin_data.Marker, ...
'MarkerEdgeColor', lin_data.MarkerEdgeColor, ...
'MarkerFaceColor', lin_data.MarkerFaceColor, ...
'SizeData', lin_data.SizeData, ...
'SizeDataSource', lin_data.SizeDataSource, ...
'XData', lin_data.XData, ...
'XDataSource', lin_data.XDataSource, ...
'YData', lin_data.YData, ...
'YDataSource', lin_data.YDataSource, ...
'ZData', lin_data.ZData, ...
'ZDataSource', lin_data.ZDataSource, ...
'SelectionHandleMode', lin_data.SelectionHandleMode)
上述代码有效。但是,如果我直接传递lin_data
变量,则返回一个错误:
scatter(1,1,lin_data)
Error using double
Conversion to double from struct is not possible.
Error in datachk (line 11)
y = full(double(x));
Error in datachk (line 9)
y = cellfun(@datachk,x,'UniformOutput',false);
Error in scatter (line 55)
dataargs = datachk(args(1:nargs));
lin_data
是一个结构。有任何想法吗?
编辑:它的工作原理,如果我用set
,但我还是不明白,为什么经过结构直接不起作用。顺便说一句,如果我用plot
它与传递结构作为参数
h = scatter(1,1);
h.set(lin_data);