在朱莉娅的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。
您应该 palette
或 m
关键字,如示例所示:
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")