【问题标题】:Log axis appearance in julia/Plots朱莉娅/绘图中的日志轴外观
【发布时间】:2019-10-10 15:03:35
【问题描述】:

这是由 julia 的 Plots 库生成的图,使用 xaxis=:log 属性:

该图具有均匀间隔的刻度线,标签为 10^0.25。有时这可能很有用,但我觉得这个情节有点令人困惑,因为大多数人不知道 10^0.25 的值而不查找它。

我希望 x 轴具有对数间隔的刻度,表示 x 轴上数量的均匀间隔。这是一个简单的示例来说明我的意思,它是在 Python 的 matplotlib 库中使用 semilogx 生成的:

在此图中,x 轴在 x=1、x=2、x=3 等处有刻度,我发现这对我生成的数字更有用。这可以在 Julia 中使用 Plots 实现吗?

【问题讨论】:

  • 交叉引用:discourse.julialang.org/t/appearance-of-log-axis-in-plots/24553。如果您在多个地方提出相同的问题,最好包含交叉引用,否则人们最终可能会花时间在已经回答的问题上。
  • @fredrikekre 谢谢。通常我不会交叉发帖——在这种情况下,我发现 discourse.julialang.org 在发帖后就存在了。如果有人在一个论坛中回答,我会在另一个论坛中发布自我回答。

标签: julia plots.jl


【解决方案1】:

正如讨论主题中所说,默认的滴答行为(对于大多数后端)与您的预期不同。

有一种方法可以实现您想要的滴答行为。您可以通过xticksytickszticks)参数手动设置刻度位置和刻度标签。

例如,以下 sn-p 将按照您在帖子中的要求在等间距点放置刻度。

x = 1:0.1:10;
y = rand(length(x));

plot(x, y, xscale=:log10, xticks=(1:10, 1:10))

元组的第一个元素是刻度的位置,第二个元素是标签。虽然我使用范围对象作为标签,但您可以使用 Strings 或 LaTeXStrings 等数组。

您可能还想查看minorticks(您的情况为xminorticks)和minorgridthe Julia Plots documentation. 中的属性

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-11-04
    • 2018-11-27
    • 2014-04-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-12-31
    • 1970-01-01
    相关资源
    最近更新 更多