Funktionen plotten

Wie erweitere ich R um eigene Funktionen oder Pakete? Welches Paket ist passend für meine Fragestellung?

Moderatoren: EDi, jogo

Lagrange
Beiträge: 14
Registriert: Di Dez 01, 2020 7:21 pm

Re: Funktionen plotten

Beitrag von Lagrange »

Du hattest keine x-Koordinaten angegeben
Tut mir leid, wenn ich so blöd frage, aber wie gibt man die x-Koordinaten an? (Habe echt noch sehr wenig Erfahrung mit R, deshalb würde es mich sehr freuen, wenn Du mir das erklären könntest).
Q <- 10
C <- 15
S <- seq(0,12,.1)
A <- function(S) (Q^2)/S
B <- function(S) (C/1)-(2*S)

plot(S, A(S), type="l", col="blue", ylim=c(0,30) ,ylab = "A bzw B")
abline(h = 10, col = "grey", lty=2)
abline(v = 10, col = "grey", lty=2)
lines(S, B(S), col="red")

text(6, 20, expression(A(S)==frac(Q^2, S)), col = "blue")
text(2, 6, expression(B(S)==C-2%.%S), col = "red")
Habe Deinen Code kopiert und 1:1 nun übernommen. Der Schnittpunkt der Gerade müsste bei 7,5 sein auf der x-Achse.

0=C-2*S <=> 2*S=C => für C=15 => 2*S=15 <=> S=7,5.

Irgendetwas stimmt also noch nicht ganz, oder?
bigben
Beiträge: 2771
Registriert: Mi Okt 12, 2016 9:09 am

Re: Funktionen plotten

Beitrag von bigben »

Doch, da ist alles in Ordnung. Ich habe nur die abline-Kommandos angepasst und dann siehst Du, dass die rote Gerade den Punkt [0 ; 7,5] enthält:

Code: Alles auswählen

Q <- 10
C <- 15
S <- seq(0,12,.1)
A <- function(S) (Q^2)/S
B <- function(S) (C/1)-(2*S)

plot(S, A(S), type="l", col="blue", ylim=c(0,30) ,ylab = "A bzw B")
abline(h = 0, col = "grey", lty=2)
abline(v = 7.5, col = "grey", lty=2)
#grid()
lines(S, B(S), col="red")
Tipp: Du kannst die Funktion grid() nutzen, um das Koordinatennetz deutlicher zu machen. Dazu einfach das '#' löschen.

LG,
Bernhard
---
Programmiere stets so, dass die Maxime Deines Programmierstils Grundlage allgemeiner Gesetzgebung sein könnte
Lagrange
Beiträge: 14
Registriert: Di Dez 01, 2020 7:21 pm

Re: Funktionen plotten

Beitrag von Lagrange »

Super! Vielen, vielen Dank! Habe echt eine Menge gelernt. Vielen Dank!
Antworten