Matlab打破X轴

时间:2017-08-29 20:41:27

标签: matlab

我在显示从 0-10K 开始的情节时遇到了麻烦。 目前我的计算从0到100运行,看起来很棒。

目前:

enter image description here

现在我想添加一个 10K 的X点 它看起来像这样: enter image description here

如何将其保持在0-100之间,只显示跳转到 10K ? 它甚至可能吗?

问题是0-100在10K中是非常小的部分所以看起来很糟糕。

2 个答案:

答案 0 :(得分:4)

您可以在更近的x坐标处绘制一个离群点,然后调整XTickXTickLabel属性,使其看起来好像在绘图范围内有中断。例如:

plot([1:20 25], 1./[1:20 10000]);
set(gca, 'XTick', [2:2:20 25], ...
         'XTickLabel', strtrim(cellstr(int2str([2:2:20 10000].'))));

这就是这个创造的情节:

enter image description here

答案 1 :(得分:2)

也许您可以尝试在不同的间隙中对x点(第二个图)进行采样。您可以组合两个x个采样点阵列(每个阵列都有一个固定的间隙,但第一个间隙远小于第二个间隙)。然后你绘制组合点。

这是一个代码示例:

clear;
close all;
clc;

gap1 = 0.2;
x_left = 1:gap1:3;
gap2 = 0.5;
x_right = 3+gap2:gap2:6;
x_ticks_for_plot = [x_left x_right];

x=x_ticks_for_plot;
y = sin(x);
plot(x,y);
xticks(x_ticks_for_plot);

情节:

enter image description here

在你的情况下,第二个差距应该比第一个差距大得多,但它的想法是一样的。