Юля: ImplictPlots в цикле: установка цветов
Как я могу назначить цвета с помощью?
using ImplicitPlots, Plots
v = [(x,y) -> (x+3)*(y^3-7)+18, (x,y) -> sin(y*exp(x)-1)]
p = plot()
for f in v
implicit_plot!(f; xlims = (-1, 3), ylims = (-1, 2), framestyle = :origin, lc = [:red, :blue])
end
p
Изменить: я также пробовал что-то вроде:
lc = [:red, :blue]
for (i, f) in enumerate (v)
implicit_plot!(f; xlims = (-1, 3), ylims = (-1, 2), lc = lc[i])
end
Легко ли передать градиент синего цвета для второй функции? (Я могу пройти
lc = :blues
но это также делает первую строку синей.)
Дополнительный вопрос: могу ли я передать вектор или кортеж в
implicit_plot
?
using ImplicitPlots, Plots
f(x,y) = [((x+3)*(y^3-7)+18, sin(y*exp(x)-1))]
implicit_plot(f; xlims = (-1, 1), ylims = (-1, 1))
ERROR: LoadError: MethodError: no method matching isless(::Float64, ::Tuple{Float64, Float64})
Я предполагаю, что это не поддерживается, но просто хотел перепроверить. Я пытался собрать оболочку, но я недостаточно знаком с тем, как передавать функции.
1 ответ
Решение
Вы уверены, что это не работает? Я пытался
lc = [:red, :blue]
for (i, f) in enumerate(v)
implicit_plot!(f; xlims = (-1, 3), ylims = (-1, 2), lc = lc[i])
end
и я получил
(У вас было дополнительное место в
enumerate
что, может быть, тебя отбросило?)
Не уверен насчет набора функций.