我有一个Matlab .fig 文件。 (基本上是一个pcolor图)。我想从这个图像中提取矩阵(比如行和列到数组变量中)。我该怎么做呢?感谢任何输入或指示。
答案 0 :(得分:1)
轴有一个子项,如果您使用pcolor
函数,则为surface
类型的对象;如果您使用image
函数,则为image
类型的对象。矩阵位于此对象的CData
属性中:
>> x = magic(3) % example data
x =
8 1 6
3 5 7
4 9 2
>> pcolor(x) % generate image
>> get(get(gca,'Children'),'CData') % retrieve the data
ans =
8 1 6
3 5 7
4 9 2
答案 1 :(得分:0)
除了Luis Mendo的回答,我想指出MATLAB支持点符号,如果性能有任何问题,点符号应始终优于set()/ get()方法。
使用handle()
函数包装器和点符号对于设置和获取句柄类属性来说是最快的。
>> x=magic(3)
x =
8 1 6
3 5 7
4 9 2
>> pcolor(x)
>> ax = handle(gca);
>> ax.Children.CData
ans =
8 1 6
3 5 7
4 9 2
有关计时实验和详细信息,请参阅:Undocumented MATLAB