【发布时间】:2018-09-23 23:57:25
【问题描述】:
我有一个函数可以创建保持某个时间的累积概率(Y 轴上的值介于 0 和 1 之间,x 轴上的天数)。因为我知道距离,所以我考虑添加一个辅助 x 轴,其中包含与时间相关的平均速度。
像this example 一样,添加辅助轴相对容易,一开始我设法将 xlim 设置为正确并反转它。
xlabel('Time (days)')
xlim([27 38])
a1Pos = get(gca,'Position');
b = axes('Position',[a1Pos(1) a1Pos(2)-.06 a1Pos(3) a1Pos(4)], 'YTick',[],'YTickLabel',[]);
xmaxb = round(dist/(xmaxa*24));
xminb = round(dist/(xmina*24));
set(b,'Units','normalized');
set(b,'Color','none');
set(b, 'XDir','reverse')
set(b,'xlim',[xminb xmaxb])
xlabel(b,'Average speed on the journey (knots)')
有两个问题,一是四舍五入影响太大,二是更重要的是xminb和xmaxb之间不是线性相关,所以我必须手动添加xticks?我试着这样做:
set(b,'XTick',[12 13 14 15 16 17])
因此,现在的辅助轴变成了空的,我不知道如何设置它们之间的不同间距(右侧 12-13 之间的距离应该大于左侧 16 和 17 之间的距离......)
【问题讨论】:
-
我假设
b是辅助轴?包含一个数字并提供一个可验证的示例可能会有所帮助。 -
是的,b是副轴,有什么建议吗?
标签: matlab