在“正”Y轴上绘制一组负数据

时间:2015-11-26 08:17:49

标签: matlab plot

我想在MATLAB中绘制一组数据,问题是这组数据都是负数。我想在Y轴上绘制它,好像它是正的,所以绘图保留在第一象限,我也希望值显示为负。

我显然试过了:

plot(x,-y);

但这不起作用,因为它在第一象限上绘制,但值转换为正值。

有关如何执行此操作的任何帮助?我搜索过文档和论坛,但找不到它。

2 个答案:

答案 0 :(得分:2)

也许您正在寻求扭转y轴上的值增长的方向?

x = -rand(100,1); %// some negative data
figure;
ah = axes;
plot(1:100, x);
%// reverse the direction in which values on y-axis increase
set(ah,'ydir','reverse')

有关详情,请参阅axes properties,尤其是XDirYDirZDir

答案 1 :(得分:1)

您可以手动设置y轴的标签。这是一个示例解决方案:

x = 1:10;
y = -1:-1:-10;

plot(x,abs(y))
ax = gca;
ax.YTick = abs(y);
ax.YTickLabel = num2cell(y);