[英]Custom x-axis values in a matlab plot
目前,当我绘制一个9乘6的数组时,该数字的x轴只有1,2,3到9.Y轴显示正确的值。
而不是1到9我想要x轴值是自定义的。 他们应该是
100 200 400 1000 2000 5000 10000 20000 50000
代替。 我试过了
set(gca,'XTick', [100 200 400 1000 2000 5000 10000 20000 50000])
但这不是正确的做法。 是否有一个Matlab
选项可以为x轴提供这些自定义值? 为什么Matlab
只使用1到9?
如果你想保持x值之间的距离(例如1:9)并且只改变标签(而不是x值之间的距离),试试这个:
y = rand(9,6);
labels = [100 200 400 1000 2000 5000 10000 20000 50000];
plot(y);
set(gca, 'XTick', 1:length(labels)); % Change x-axis ticks
set(gca, 'XTickLabel', labels); % Change x-axis ticks labels.
您应该使用xTickLabel而不是XTick
。
MATLAB将每列绘制为单独的曲线。 因此,这意味着每条曲线有6条曲线和9条数据点。 x轴数据为1-9,因为您没有提供MATLAB绘图的任何数据。
此外,你可能想要错误的东西。 这样做会给你相等的间距。 它只会用您的阵列替换1-9。 由于您的x轴数据间隔不均匀,因此会很奇怪。
你可能想这样做:
xdat = [100 200 400 1000 2000 5000 10000 20000 50000];
ydat = rand(9,6); % Your y-axis data
plot(xdat, ydat)
尝试使用
x = [100 200 400 1000 2000 5000 10000 20000 50000];
y = rand(9,6); % Your y-axis data
plot(x, y);
set(gca,'XTick',x); % Change x-axis ticks
set(gca,'XTickLabel',x); % Change x-axis ticks labels to desired values.
请注意,由于使用非x轴的值/幅度非常不同,您可以获得非常接近(且不可读)的一些x标签
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.