3

在 Julia 的Plots包中,我可以像这样更改曲面图的颜色:

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

如何更改默认颜色渐变,以便我不必c=:blues每次都放置?

(相关的Plots 文档页面没有说明如何修改默认值。)

4

3 回答 3

2

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

with(c = :blue) do
plot!(rand(5))
plot!(rand(5))
end
于 2019-02-19T05:47:44.573 回答
2

请参阅 Julia Plots 文档中的提示:

提示:您可以使用 来查看给定参数的默认值,并使用或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中包的 UUID在哪里。Plots.jl

于 2019-04-28T18:03:35.227 回答
0

您应该使用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")
于 2019-02-14T13:40:50.787 回答