Rozwiązałem równania różniczkowe z R, gdy natknąłem się na problem: musiałem dodać Isoclines i pole kierunkowe do mojego spisku, ale nie wiedziałem, jak to zrobić. Jaki pakiet powinienem zainstalować/jakiej funkcji powinienem/powinienem zrobić ręcznie?Dodaj izocliny i/lub pole kierunkowe do wydrukowania
Odpowiedz
Tutaj nie jest odpowiedzią, ale tylko podsumowanie odpowiedzi udzielonych w komentarzach:
LVCompGames
wprimer
pakietu dać tej działki:
- ten jest rozwiązaniem podanym przez @Ben Bolker. Rozwiązanie oparte jest na pakiecie
graphics
i funkcjifilled.contour
.
- Następnie @Josh O'Brien sugestia pakiet
rasterVis
zvectorplot
funkcji
Myślę, że wszystkie odpowiedzi można dostosować, jeśli dać nam więcej informacji tego, co chcesz jako wynik.
Dziękuję bardzo, bardzo mi pomogłeś. Naprawdę przepraszam, że zawracam ci głowę tym pytaniem, teraz widzę, że nie było to takie trudne. Jeszcze raz dziękuję i mam nadzieję, że będę mógł wnieść swój wkład na stronę. – user1955058
Jesteś zadowolony. jeśli odpowiedź spełnia twoje wymagania, możesz to sprawdzić, zaznaczając pole wyboru po lewej stronie odpowiedzi. – agstudy
Funkcja my.symbols
w pakiecie TeachingDemos umożliwia zdefiniowanie własnych symboli do dodania do istniejącej działki. Funkcja wsparcia ms.arrows
koduje już podstawowe strzałki do dodania do wykresu, można go łatwo modyfikować (lub inne funkcje ms), aby utworzyć inny symbol do dodania.
Istnieje świetny pakiet o nazwie phaseR. Korzysta z rozwiązania ODE z pakietu deSolve i pozwala łatwo dodawać nullclines, trajektorie i tak dalej. Pamiętaj, aby wymienić parametry funkcji ODE "t", "y" i "parametry". W przeciwnym razie funkcje Phaser daje błąd:
Error in deriv(t = 0, y = c(x[i], y[j]), parameters = parameters) :
unused arguments (y = c(x[i], y[j]), parameters = parameters)
Oto przykładowy kod działa dla układu drapieżnik-ofiara Lotka-Volterra:
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. Dodaj pole niestandardowe do kursu Moodle
- 2. Dodaj pole tekstowe pomocnika rails do atrybutu?
- 3. Symfony2 dodaj pole reCaptcha do formularza rejestracyjnego
- 4. Dodaj pole wyboru "Zapamiętaj mnie"
- 5. HTML do PDF A4 do wydrukowania
- 6. Komenda AWK do wydrukowania do końca wiersza
- 7. 3-kierunkowe scalanie w JavaScript lub PHP
- 8. Dodaj nowe pole do kolekcji o wartości istniejącego pola.
- 9. Dodaj pole CCK do formularza niestandardowego w Drupal 7
- 10. Dodaj pole niestandardowe/kolumnę do opracowania z Rails 4
- 11. Redmine - Dodaj pole "Czas spędzony" do wyświetlania problemów
- 12. Dodaj dolny cień pole do menu na scrollup i scrolldown
- 13. Dodaj pole image/awatar do użytkowników w django
- 14. Dodaj pole odnośnika do typu zawartości w programie SharePoint
- 15. Wskaźniki nawigacyjne Flexslider 2 kierunkowe brakujące do pobrania
- 16. Dodaj domyślną wartość dla czasu (7) pole
- 17. CSS ukryj kolumnę tabeli do wydrukowania
- 18. Ponownie wyrenderuj komponenty Reactjs do wydrukowania
- 19. Implementacja metody toString do wydrukowania obiektu LinkedList
- 20. Wydajny sposób liczenia liczby stron do wydrukowania?
- 21. C# pole chronione jako prywatne, dodaj właściwość - dlaczego?
- 22. PHPMyAdmin/MySql - Dodaj pole ID i automatycznie wypełniaj numery ID
- 23. MongoDB: agregat $ projekt dodaj pole o wartości statycznej
- 24. Dodaj pozycję, aby zaznaczyć pole z wymownym kolekcji
- 25. Jak wyświetlać komentarze na Facebooku Pole "Dodaj komentarz" domyślnie
- 26. Dodaj pole wyboru wybierz, aby włączyć obraz wymiany js
- 27. LINQ do SQL - nie Dodaj metody Dodaj
- 28. Szyny - dodaj atrybuty i dodaj do tablicy
- 29. Dodaj niezerowe i unikalne pole z już zapełnionym modelem
- 30. rekursywny szablon variadic do wydrukowania zawartości pakietu parametrów
'biblioteka ('SOS') findFn ('isoclines') 'daje mi pakiet' LVCompGames': generuje wykres isoclin i punktów początkowych. – agstudy
Myślę, że * możesz * musisz to zrobić ręcznie; Podejrzewam, że wielu ludzi napisało swój własny kod, aby to zrobić, ale nie znam wersji w pakiecie (i na podstawie odpowiedzi @ agstudy, wątpię, by była jedna - "isoklina" powinna być dość niezawodny dla słowa kluczowego wyszukiwania). Znalezienie isoclines jest (niestety) nie całkiem banalne ... –
Niestety nazwa pakietu to 'primer', a LVCompGames to funkcja izoclin – agstudy