Данные графика сдвига по оси X Matlab

Я не могу заставить Matlab нанести второй временной ряд на определенные точки вдоль оси x. Мои данные - это два временных ряда. Временной ряд A равен 5 X 1, а временной ряд B равен 7 X 1. Мне нужно, чтобы A наносил на xticklabels 1-5. Затем, с помощью "Hold on", мне нужно сместить временной ряд B вправо, чтобы нанести на xticklabels 6:12. Я продолжаю заставлять второй график наносить график непосредственно поверх первого без сдвига. Я пробовал среди прочего ->

set(gca,'XTick',[6 7 8 9 10 11 12]);

и он отображает смещение чисел оси X, но данные не отображаются в позициях 6:12. Буду признателен за любую оказанную помощь. Я видел некоторые онлайн-ответы, но, похоже, не могу понять это правильно.

1 ответ

Решение

В Matlab вы можете построить что-то, используя plot(xArray, yArray);, Если вы хотите сместить график вдоль оси х, вы можете использовать plot(xArray + amountToShift, yArray);,

Поскольку я считаю, что смещение не является вашей реальной проблемой, я добавил пример, в котором данные отображаются в том виде, как вы описали:

A = [1, 2, 2, 1, 3];
tA = 1:5;
B = [3, 5, 2, 1, 2, 7, 5];
tB = 6:12;

plot(tA, A);
hold on;
plot(tB, B);
Другие вопросы по тегам