Редактирование расстояния между отметками - PullRequest
0 голосов
/ 31 мая 2018

В настоящее время я использую субплоты в MATLAB, и это мои данные метки x: [.4 .5 .6 .9 1.2 1.5 2 2.5 3 4 5 6 7 8 9 10 12 15 20 30 40]

Я пытаюсь определить, есть ли способ равномерно расставить метки или расширитьинтервал для более низких значений, так что вы можете прочитать цифры.Короче говоря, я хотел бы, чтобы физический интервал отметок был основан на некоторой заранее определенной константе, а не на фактических числовых значениях.

1 Ответ

0 голосов
/ 01 июня 2018

Вы можете использовать логарифмическую шкалу для оси X - используйте semilogx вместо plot.
(IMO, это было бы лучше в вашем случае)

x = [.4 .5 .6 .9 1.2 1.5 2 2.5 3 4 5 6 7 8 9 10 12 15 20 30 40];
y = x/2; % some example data
figure
semilogx(x,y, '.')
set(gca,'xtick', x)

Другой вариант - изменитьметки на x-ticks, устанавливающие свойство xticklabel.Обратите внимание, что вы можете установить пользовательские значения в ticks вектор.

x = [.4 .5 .6 .9 1.2 1.5 2 2.5 3 4 5 6 7 8 9 10 12 15 20 30 40];
y = x/2; % some example data
ticks = [];
for t = 1:size(x,2)
  ticks = [ticks t];
end
figure
plot(ticks, y, '.') % in this example same as 'plot(y)'
set(gca, 'xtick', ticks,'xticklabel', {.4 .5 .6 .9 1.2 1.5 2 2.5 3 4 5 6 7 8 9 10 12 15 20 30 40})
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...