如何在图中设置默认的颜色梯度



在朱莉娅的Plots软件包中,我可以更改这样的表面图的颜色:

plot(mySurface,st=:surface,c=:blues)

如何更改默认的颜色梯度,以免每次都放置c=:blues

(相关绘图文档页面不说明如何修改默认值。)

我在这里看到了一个可能的解决方案。https://github.com/juliaplots/plots.jl/issues/87

with(c = :blue) do
plot!(rand(5))
plot!(rand(5))
end

请参阅Julia绘制文档的提示:

提示:您可以看到使用default(arg::Symbol)的给定参数的默认值,并使用default(arg::Symbol, value)default(; kw...)设置默认值。例如,设置默认窗口大小以及我们是否应该使用default(size=(600,400), leg=false)显示传奇。

http://docs.juliaplots.org/latest/basics/

因此,您可以使用

设置所需的默认值
default(c=:blues)

尽管您可能想为fillcolor而不是seriescolor或其别名c设置一个新的默认值,因为seriescolor也会影响其他类型的绘图的颜色,而您可能不想要它。

default(fillcolor=:blues)

只要您不设置任何其他默认值或重新启动Julia会话,默认值就可以正常工作。

如果您希望新的默认值即使重新启动Julia,则可能需要使用以下内容尝试Requires.jl和启动文件(~/.julia/config/startup.jl),

using Requires
@require Plots="91a5bcdd-55d7-5caf-9e0b-520d859cae80" Plots.default(fillcolor=:blues)

其中91a5bcdd-55d7-5caf-9e0b-520d859cae80是注册表中Plots.jl软件包的UUID。

您应该 palettem关键字,如示例所示:

y = rand(100)
plot(0:10:100, rand(11, 4), lab="lines", w=3, palette=:grays, fill=0, α=0.6)
scatter!(y, zcolor=abs.(y .- 0.5), m=(:heat, 0.8, Plots.stroke(1, :green)), ms=10 * abs.(y .- 0.5) .+ 4, lab="grad")

相关内容

  • 没有找到相关文章