Le traçage en échelle logarithmique en R
Je suis en train de tracer une échelle logarithmique, mais j'obtiens toujours cette erreur:
Error in plot.window(...) : invalid "log=1/h" specification.
Je ne suis pas sûr de ce que je fais de mal. Ci-dessous mon code:
#function
function(stepsize, temp_val, counter) {
while(counter < 0) {
counter <- counter + stepsize
px_norm <- dnorm(counter, mean = 0, sd = .04)
temp_val <- temp_val + px_norm }
temp_val <- 2*temp_val
temp_val <- temp_val *(stepsize/2)
print(temp_val, digits = 12)
}
#Initial step size
h <- .01
while (h > .00001) {
x <- calc_error(h, 0, -5) #Gives me a result around .5
err <- x - (exp(-.02)*0.5)
plot(1/h, err, log = "1/h")
h <- h/10 }
Fondamentalement, dans ce court laps de fonction que j'essaie de montrer que l'étape de la taille augmente, l'erreur de la solution diminue. Cependant, je vais avoir de la difficulté à tracé de cette. Toute aide sera appréciée. Grâce
- Ce n'est pas un exemple reproductible.
#
est utilisé pour les commentaires dans R, pas//
. Qu'est-ce quecalc_error
? nous n'avons pas cette fonction. - Cette fonction fonctionne bien, il donne un résultat autour de .5. Je suis juste à avoir des problèmes de traçage
- nous n'avons aucune foutue idée de ce que la fonction est. Nous ne pouvons pas lire dans votre esprit. sans
calc_error
nous ne pouvons pas générer les données pour tracer quoi que ce soit. Aussi, aucun sens de l'intrigue de chaque point à l'intérieur de la boucle. - la fonction peut bien fonctionner, mais nous n'avons pas la fonction
calc_error
. Vous devrez fournir le code pour cette fonction, si elle est écrite par vous ou le package dans lequel il se trouve. Sinon nous ne pouvons pas reproduire votre code. - Ok, je vais le poster
Vous devez vous connecter pour publier un commentaire.
Cela devrait être un moyen facile de créer de la parcelle:
h
. Une seule valeur est indiquée parx
depuis que j'ai défini la fonction comme une fonction dex
(function(x)
). Fondamentalement,h
est l'ensemble, mais la fonction est appliquée à chaque élément séparément.print
commande dans votre fonction. Il suffit de retirer la ligneprint(temp_val, digits = 12)
et vous ne verrez pas la sortie.journal doit être l'axe de votre parcelle de terrain que vous voulez dans l'espace du journal, mais pas les données.
c'est à dire
permettra de tracer votre axe x dans l'espace du journal
calc_error
question, je ne suis pas sûr de la façon dont vous vous attendez de nous aider sans vraiment avoir de vos données en face de nous.Je suppose que vous voulez quelque chose comme ceci: