Юлия Плотс;Как я могу отдельно построить графики связанных уравнений? - PullRequest
0 голосов
/ 21 октября 2018

Я изучаю Юлию, в частности, как решать связанные дифференциальные уравнения.Я смотрю на страницу документа для дифференциальных уравнений и взял этот код из него:

using DifferentialEquations


function lorenz(du,u,p,t)
    du[1] = 10.0*(u[2]-u[1])
    du[2] = u[1]*(28.0-u[3]) - u[2]
    du[3] = u[1]*u[2] - (8/3)*u[3]
end

u0 = [1.0;0.0;0.0]
tspan = (0.0,100.0)
prob = ODEProblem(lorenz,u0,tspan)
sol = solve(prob)
using Plots; plot(sol)

Так что это отображает u [1], u [2] и u [3] на одном графике,Однако я хотел знать, как я мог бы построить 3 отдельных графика для u [1], u [2] и u [3]?Это не полезно здесь, но для математических дифференциальных уравнений было бы полезно отобразить свойства компонентов на разных графиках.

Ответы [ 2 ]

0 голосов
/ 22 октября 2018

Команды построения документированы на этой странице .Вы можете видеть, что vars позволяет вам выбрать переменные, которые вы хотите построить.Таким образом, чтобы создать несколько подзаговоров, вы можете сделать такие вещи, как:

p1 = plot(sol, vars=1)
p2 = plot(sol, vars=2)
p3 = plot(sol, vars=3)
plot(p1,p2,p3,layout=(3,1))

Если вы хотите построить все переменные, хороший маленький трюк, описанный @hesham_EE, заключается в том, что вы можете просто задать макет, и он автоматическиразбить его на разные участки:

plot(sol, layout = (3,1))
0 голосов
/ 21 октября 2018

Вы можете сделать это на одном графике в виде сетки:

plot(sol, layout = (3,1))

Или, если хотите, вы можете построить каждый на своем графике.Например, чтобы построить 1-й, вы можете сделать:

plot(sol[1,:])
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...