答案 0 :(得分:0)
不幸的是,我的研究表明在MATLAB中没有内置的方法。我看到其他人暗示:
在您自己的数据中扭曲字段,例如将x值从10,30和50更改为100,300和500以获得10倍放大率,然后将500添加到所有其他x值因此它们向右移动;然后修改标签(见下文)以阅读&#34; 10&#34;,&#34; 30&#34;,&#34; 50&#34;,&#34; 100&#34;等< / p>
使用直方图,其中x轴标签成为分档,例如 10,30,50,100等,并且您使用空箱来分隔点。
从MathWorks docs开始,您可以随意设置刻度位置,无论是否统一:
ax = gca;
ax.XTick = [-3*pi -2*pi -pi 0 pi 2*pi 3*pi];
ax.YTick = [-1 -0.5 0 0.5 1];
% For R2014a and earlier:
% ax = gca;
% set(ax,'XTick',[-3*pi -2*pi -pi 0 pi 2*pi 3*pi])
% set(ax,'YTick',[-1 -0.5 0 0.5 1])
因此,编写一个函数来创建所需的间距并将其返回值分配给XTick
。在您的情况下,您似乎只需要检索要绘制的点的域值。