【发布时间】:2017-06-07 22:18:42
【问题描述】:
我有一个正自然数向量,我使用典型的 plot() 函数在 Matlab 中绘制它。这是一个示例图:
但是,我需要查看以二进制显示的矢量(y 轴)。有没有办法以二进制(radix-2)更改轴显示?我尝试使用 dec2bin,但它只将整数转换为无法绘制的字符串。
【问题讨论】:
标签: matlab plot binary 2d matlab-figure
我有一个正自然数向量,我使用典型的 plot() 函数在 Matlab 中绘制它。这是一个示例图:
但是,我需要查看以二进制显示的矢量(y 轴)。有没有办法以二进制(radix-2)更改轴显示?我尝试使用 dec2bin,但它只将整数转换为无法绘制的字符串。
【问题讨论】:
标签: matlab plot binary 2d matlab-figure
这个怎么样:
L = get(gca,'YTickLabel');
set(gca,'YTickLabel',cellfun(@(x) dec2bin(str2num(x)),L,'UniformOutput',false));
编辑:由于您希望能够缩放,这里有一种方法可以使轴可缩放:
zh = zoom(gcf);
set(zh,'ActionPreCallBack',@(source,event,s) set(gca,'YTickLabelMode','auto'))
set(zh,'ActionPostCallBack',@(source,event,s) set(gca,'YTickLabel',cellfun(@(x) dec2bin(str2num(x)),get(gca,'YTickLabel'),'UniformOutput',false)));
它在缩放之前将轴重置为十进制,然后在缩放之后转换回二进制。
【讨论】: