Юля: 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 что, может быть, тебя отбросило?)

Не уверен насчет набора функций.

Другие вопросы по тегам