【问题标题】:Show minor tick labels in Matlab. Semilog plot在 Matlab 中显示次要刻度标签。半对数图
【发布时间】:2016-01-17 23:15:58
【问题描述】:

我正在尝试创建一个符号图,我可以在其中看到小蜱的标签。我绘制的数据范围从 292 到 1138。因此,默认情况下,符号图只显示 1000 中的标签。我还需要显示小刻度中的标签(使用较小的字体会很棒),因为只有一个整个 y 轴上的数字信息量不是很大。非常感谢!

【问题讨论】:

标签: matlab matlab-figure


【解决方案1】:

在 Matlab 上看起来像 there's a bug,这使得无法标记次要刻度。 (感谢@excasa)

One thing you could do 将gca 的YTick 属性设置为值递增的向量。然后,在你想要的地方会有标签(即使它们不再是次要的刻度,而是正常的刻度)。

例子:

ax = gca; %get current axis
ax.XTick = [-3*pi -2*pi -pi 0 pi 2*pi 3*pi];
ax.YTick = [-1 -0.5 0 0.5 1];

% For R2014a and earlier:
% ax = gca;
% set(ax,'XTick',[-3*pi -2*pi -pi 0 pi 2*pi 3*pi])
% set(ax,'YTick',[-1 -0.5 0 0.5 1])

您还可以激活网格以获取较小的刻度set(gca,'YminorGrid','on'),这样您就可以更好地查看值(即使它们没有被标记)。

【讨论】:

  • 我正在寻找一种自动执行此操作的方法。如果您有几个(数百个)地块,那么该方法会很痛苦。此外,更重要的是,如果您使用半对数而不是绘图,该示例将不起作用
  • 现在我明白我在哪里误解了你,因为你想标记次要刻度,而我的回答只是关于正常大小的刻度......好吧,你可以用正常刻度替换次要刻度(因为,正如 'excasa' 评论的那样,它确实看起来像一个错误),或者您可以启用小网格 (set(gca,'YminorGrid','on')) 以更好地了解小刻度参考的值和位置。我正在编辑答案。
  • 你提到的那个bug是针对r13的。他们在 r14 中对其进行了更正。然而,这个错误是关于小标记的,但那些是垂直于轴的小线。我的问题是关于minorTicks 标签,即刻度线旁边和边界框外的数字;-) YminorGrid 很有用,虽然我知道如何做到这一点,但它是一个很好的视觉辅助工具。但对我的评论者来说还不够。
  • 嗯,这似乎是不可能的......我检查了axes properties,似乎唯一能做的就是设置小刻度“开”或“关”,除了标记正常刻度。就我所知……
猜你喜欢
  • 1970-01-01
  • 2013-06-22
  • 2015-09-02
  • 1970-01-01
  • 1970-01-01
  • 2021-10-15
  • 1970-01-01
  • 1970-01-01
  • 2021-12-08
相关资源
最近更新 更多