使用预定义的x轴在MATLAB中绘制曲线

时间:2016-08-24 16:49:13

标签: matlab plot

我有两个向量:

x = [1,2,3,5,6,10,20,50,100]

y = [7,1,2,4,2,1,5,1,1];

我有兴趣在MATLAB中将Y绘制为X的函数。所以,这可以通过以下方式完成:

figure;
plot(x, y, '--rs');

实际上,上面的代码绘制了曲线,但x轴似乎间隔如下:0,10,20,...,100。

我想要的是绘制一条曲线,该曲线仅显示 x 中的值作为x轴及其对应的y轴值。 x轴的示例如下图所示。 enter image description here

任何帮助都将非常感谢!!

1 个答案:

答案 0 :(得分:3)

使用plot(x,y)而不是使用plot(1:numel(x),y)绘图,并使用XTick和XTickLabels`属性更改图表的标签以满足您的需要。

示例:

clc
clear

x = [1, 2, 3, 5, 6, 10, 20, 50, 100];

y=[7, 1, 2, 4, 2, 1, 5, 1, 1];

plot(1:numel(x),y,'--rs')

set(gca, 'XTick', 1:length(x)); %// Change x-axis ticks
set(gca, 'XTickLabel', x); %// Change x-axis ticks labels.

结果:

enter image description here

希望有所帮助!