Ich löste Differentialgleichungen mit R, als ich auf ein Problem stieß: Ich musste meinem Plot Isoclines und ein Richtungsfeld hinzufügen, wusste aber nicht wie. Welches Paket soll ich installieren/welche Funktion soll ich aufrufen/sollte ich das alles manuell machen? HierIsoklinen und/oder Richtungsfeld zum Plotten hinzufügen
Antwort
ist keine Antwort, sondern nur eine Zusammenfassung der in den Kommentaren gegebenen Antworten:
- die
LVCompGames
inprimer
Paket gibt dieses Grundstück:
- Diese ist die Lösung von @Ben Bolker. Die Lösung basiert auf dem
graphics
Paket und derfilled.contour
Funktion.
- Dann Vorschlag @ Josh O'Brien das
rasterVis
Paket mitvectorplot
Funktion
Ich denke, alle Antworten angepasst werden können, wenn Sie uns weitere Informationen geben von dem, was Sie als Ausgabe wünschen.
Vielen Dank, Sie haben mir sehr geholfen. Es tut mir wirklich leid, dass ich Sie mit dieser Frage belästigt habe, jetzt sehe ich, dass es nicht so schwierig war. Nochmals vielen Dank und ich hoffe, dass ich zur Seite beitragen kann. – user1955058
Sie sind willkommen. Wenn die Antwort Ihren Anforderungen entspricht, können Sie sie akzeptieren, indem Sie das Kontrollkästchen links neben der Antwort aktivieren. – agstudy
Mit der Funktion my.symbols
im TeachingDemos-Paket können Sie eigene Symbole definieren, die zu vorhandenen Plots hinzugefügt werden. Die Unterstützungsfunktion ms.arrows
codiert bereits grundlegende Pfeile, die zu einem Plot hinzugefügt werden. Sie können sie einfach (oder die anderen ms. Funktionen) modifizieren, um ein anderes Symbol zum Hinzufügen zu erstellen.
Es gibt ein großes Paket namens phaseR. Es verwendet den ODE-Solver aus dem Paket deSolve und lässt Sie problemlos Nulllinien, Trajektorien und so weiter hinzufügen. Geben Sie nur die Parameter Ihrer ODE-Funktion "t", "y" und "parameter" an. Andernfalls werden die Phaser-Funktionen einen Fehler geben:
Error in deriv(t = 0, y = c(x[i], y[j]), parameters = parameters) :
unused arguments (y = c(x[i], y[j]), parameters = parameters)
Hier ist ein funktionierendes Codebeispiel für die Lotka-Volterra-Räuber-Beute-System:
require(deSolve)
require(phaseR)
model.LV <- function(t, y, parameters){
with(as.list(parameters),{
N<-y[1]
P<-y[2]
dN <- a*N - b*N*P
dP <- c*N*P -d*P
list(c(dN,dP))
})
}
params.LV<-c(a=0.4, b=0.3, c=0.1, d=0.2)
data.LV<-as.data.frame(lsoda(c(N=1,P=1),seq(1,250,by=0.5), model.LV, params.LV))
# plot the time series of both populations
plot(data.LV$time,data.LV$N, main="Time series of L-V equations", xlab="time",
ylab="Population densities N, P",
type="l", col="green",
ylim=c(0,max(data.LV$N,data.LV$C)))
lines(data.LV$time,data.LV$P,col="red")
# plot the trajectories of the system
plot(data.LV$N, data.LV$P, type="l", col="blue", main="Trajectory of L-V equations",
xlab="Prey density N", ylab="Predator density P", xlim=c(0,5), ylim=c(0,3))
#add Nullclines
nullclines(model.LV, x.lim=c(0.1,5),y.lim=c(0.1,3), parameters=params.LV, system="two.dim", colour=c("green","red"), add=TRUE)
- 1. Alle Legendenbeschriftungen gleichzeitig zum Plotten hinzufügen (Python)
- 2. Hinzufügen eines Bildes zum Plotten in R
- 3. backtransform `Skala()` zum Plotten
- 4. Sortieren von Daten zum Plotten in mplot3d
- 5. Python: Modul zum Plotten von Gantt-Diagrammen
- 6. Gnuplot: Zeile 0: Funktion zum Plotten erwartet
- 7. Mapreduce Hilfe zum Plotten von Linegraf
- 8. Algorithmus zum effizienten Plotten einer Liniengruppe
- 9. Matlab wählen zufällige Farbe zum Plotten
- 10. Umformung von Zeitreihendaten vom Wide- zum Tall-Format (zum Plotten)
- 11. Hinzufügen zum Repository hinzufügen
- 12. Plotten animierten Austausch (Plotten Richtungskanten)
- 13. Plotten Histogramm
- 14. Plotten Erntekalender
- 15. MATLAB Plotten Fehlerlichtbogen auf Cirular plotten stieg
- 16. Rahmen zum Kreisbild hinzufügen
- 17. Dezimalstellen zum Zeitbereich hinzufügen
- 18. Text zum Zeichen hinzufügen *
- 19. Symbol zum Projekt hinzufügen?
- 20. Symbolleiste zum Navigationscontroller hinzufügen
- 21. Etikett zum Senden hinzufügen
- 22. Klassenbeschreibungen zum Code hinzufügen?
- 23. Zeichen zum Wert hinzufügen
- 24. Schaltfläche zum Frame hinzufügen
- 25. Hinzufügen JPopupMenu zum TrayIcon
- 26. Tabelle zum Dataset hinzufügen
- 27. Hinzufügen zum Netzbefehl
- 28. Programm zum Start hinzufügen
- 29. Dichte zum Linienzug hinzufügen
- 30. WKWebView Zum SubView hinzufügen
'Bibliothek ('sos') findFn ('Isoklinen') 'gibt mir' LVCompGames' Paket: Dies erzeugt ein Diagramm von Iso-Linien und Anfangspunkten. – agstudy
Ich denke, Sie * müssen * müssen es manuell tun; Ich vermute, dass viele Leute ihren eigenen Code dafür geschrieben haben, aber ich kenne keine gepackte Version (und basierend auf der Antwort von @ agstudy, ich bezweifle, dass es eine gibt - "isocline" sollte ein ziemlich zuverlässiges Suchwort sein). Isoclines zu finden ist (leider) nicht ganz trivial ... –
Entschuldigung, der Paketname ist 'primer' und LVCompGames ist die Isoclines-Funktion – agstudy