您可以创建两个次要情节和,但他们在一起
% plotting
figure;
p1 = subplot(2,1,1);
idx = x>=0; plot(vector(idx), x(idx));
p2 = subplot(2,1,2);
idx = x<=0; plot(vector(idx), x(idx));
% Make x-axis limits the same (must use datenum)
lims = datenum([min(vector), max(vector)]);
xlim(p1, lims); xlim(p2, lims);
% Make the plots meet in the middle
h = 0.45; w = 0.9; % height and width
set(p1, 'position', [(1-w)/2, 0.5, w, h])
set(p2, 'position', [(1-w)/2, 0.5-h, w, h])
% Ensure the y axes meet at 0
ylim(p1, [0, max(x)]); ylim(p2, [min(x), 0]);
两个个别地块但是可以做你喜欢。所以如果你用相关的方法绘制它们,你会得到一个指数y轴和一个log y轴。
不是以上plot(...)
行的,你可以使用
% log y plot
semilogy(datenum(vector(idx)), x(idx))
注意,这个输出工作完全符合预期,但你正在试图做实际的情节听起来很混乱。在大多数情况下,如果这些轴真的想与众不同,那么将其作为两个独立的情节呈现出来可能会更好。在这种情况下,请使用上面的代码而不使用position
行!
之前的情节类型乱搞,这是输出的样子,上面和在0线下方的Y轴是完全独立的,因为这实际上是2个地块:
谢谢!它工作正常,但我想我同意它看起来很混乱;)所以我会用2个地块,而不是正常的规模,一个与日志规模。现在我知道如何用日期做半日志,我唯一的问题是:“不显示负值”。你有什么建议? – LenaH