【问题标题】:Creating a log scale graph in MatLab在 MatLab 中创建对数比例图
【发布时间】:2013-12-04 19:52:30
【问题描述】:

我正在尝试绘制一个简单的图表,显示x 轴上的实数与y 轴上的log 数字之间的关系。我的图表很接近,但不是我预期的。我的向量从1 开始,以100 结束。我认为1 等于10^02 等于10^0.3,直到100 等于10^2

我的代码:

x = log10(1:100);
plot(x)
set(gca,'YScale','log')
grid on

我的图表:

【问题讨论】:

  • 你没有问问题。你想得到什么?

标签: matlab


【解决方案1】:

看起来成功了。正如您所说,10^0.3 = 2,这是您的semilogy 图上的最高索引。您在这里的情节实际上显示的是y=log10(log10(x));。保留 y 轴直线,您将得到您想要的绘图。

【讨论】:

  • 感谢您的回复。我必须遗漏一些东西,因为 x 轴上的第 2 号(0 -10 之间)是 10^-0.5 就在 y 轴的底部。 100 应该在 10^2 上,但我的数据不知道图表中接近那个高点的位置。
  • 我刚刚发现没有set(gca, 'YScale', 'log')这行代码确实是正确的,因为2是y的索引的顶部。一旦我设置了gca,它就会将最高索引号2 视为:log10(2) 是什么,这不是我想看到的。
  • log10(log10(2)) = -0.52, log10(log10(100)) = +0.30,您的 y 轴从 10^-0.52 变为 10^+0.30。
猜你喜欢
  • 2019-10-17
  • 2011-06-28
  • 1970-01-01
  • 1970-01-01
  • 2018-03-26
  • 2018-01-08
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多