julia - 如何在 Julia 图中制作科学的 y 刻度?

标签 julia julia-plots

我在 Julia 1.5 中使用 Plots。
如何制作如下所示的 y 刻度?
我们有时会在科学论文中看到具有正确轴类型的图形。
enter image description here

最佳答案

我不知道是否有一种简单快捷的方法,但这是我的解决方案。
首先我们应该安排刻度标签。 Plots.jl为我们提供formatter轴属性。我们可以将此属性设置为一个函数,该函数接受刻度的数值并返回一个字符串作为刻度标签。

x=0:0.2:0.8
y=[1,2,3,4,5] * 10^-8    
plot(x, y, ytick=y, yaxis=(formatter=y->string(round(Int, y / 10^-8))))
为了用正确的比例注释轴,我使用 Plots.annotate!Plots.text , 并适当设置注释的位置和大小。此解决方案的问题是注释可能会溢出绘图区域,如果没有设置标题,可能不会完全可见。如果出现此类问题,您可以设置幻影标题。
using LaTeXStrings    
x = 0:0.2:0.8
y = [1,2,3,4,5] * 10^-8
plot(x, y, yticks = y,  yaxis=(formatter=y->string(round(Int, y / 10^-8))), title="   ")
annotate!([(0, maximum(y) * 1.05, Plots.text(L"\times10^{-8}", 11, :black, :center))])
请注意,我手动处理了从数值到科学计数法的转换。您可以使用 Printf 中的工具自动处理它模块。
这是最终结果
Final result with scientific xtick

关于julia - 如何在 Julia 图中制作科学的 y 刻度?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65977114/

相关文章:

julia - 数组的长度或维度不正确。 Julia 中的等高线图

julia - Julia 散点图中的大小和颜色

julia - 如何在 Julia 中保存情节?

julia - Plots.jl 图例文字颜色?

r - Julia 对 R 对象属性的最佳近似是什么?

julia - 将矩阵的行/列提取到单独的变量中

sorting - 如何在Julia中按给定元素对元组进行排序?

julia - 如何用 julia 语言用这个数据集制作一个好的图表?

julia - Savefig 关闭 session

julia - julia 0.6 中的质因数分解