Я рисую данные, которые являются полиномами, но я хотел бы показать их на прямой линии, чтобы они были более четкими.
Я хочу, чтобы отметки оси X показывали N ^ 2, где N - положение отметки. Я также хочу, чтобы фактические отметки на графике были равномерно распределены, даже если числа нет.
Я пытался поменять галочки с помощью
Xtick_squared = (0: 10: 100). ^ 2 set (gca, 'xTick', xtick_squared, 'xTickLabel', xtick_squared)
Как я могу отобразить их с равным интервалом, сохраняя при этом их значения, а также корректируя данные?
2 ответа
Это должно работать нормально:
x = 0:10:100;
y = (x .^ 2) + 5;
labs = sprintfc('%d',x.^2);
plot(x,y);
set(gca,'XTickLabel',labs);
На самом деле, все дело в изменении меток галочки, не меняя сами галочки. Вот окончательный результат:
Вы можете указать расположение x-меток, а затем переименовать их.
Вот пример кода:
x=[0,10,20,30,40,50].^2;
plot(x,x)
set(gca,'XTick',linspace(0,2500,6),'XTickLabels',num2cell(x))
P.S .: Обратите внимание, что ваши фактические данные отображаются на равномерно распределенной сетке. Я только что переименовал имена клещей.
Изменить: если вы хотите построить свои фактические данные, вам необходимо соответственно масштабировать x
- ось. Если вы хотите plot(x,x)
, вам нужно вместо этого позвонить plot(sqrt(x),x)
:
x=[0,10,20,30,40,50].^2;
plot(sqrt(x),x)
set(gca,'XTick',linspace(0,2500,6),'XTickLabels',num2cell(x))
Похожие вопросы
Новые вопросы
matlab
MATLAB - это высокоуровневая языковая и интерактивная среда программирования для численных расчетов и визуализации, разработанная MathWorks. Не используйте оба тега [matlab] и [octave], если явно не задан вопрос о сходстве или различии между ними. При использовании этого тега, пожалуйста, укажите версию MATLAB, с которой вы работаете (например, R2017a).