9
votes

Ajustez l'axe R dans des parcelles après la parcelle (...) et des lignes (...)?

t et tt a des jours communs mais les évaluations ne sont même pas proches afin qu'elles n'apparaissent pas dans la même parcelle. Y a-t-il une certaine commande pour ajuster l'axe à 0:10 dans la commande de départ ou après des lignes? Certaines manière automatique de le faire, chaque point apparaît-il? XXX PRE>

Je suis sûr de l'erreur, car le tracé fonctionne avec des points d'évaluation communs: P>

> plot(data.frame(tt[1], log(tt[2])), type='l')
> points(data.frame(t[1], log(t[2])+1.5))


0 commentaires

3 Réponses :


1
votes

hmm Si j'ai eu votre question à droite, il vous suffit d'ajouter ylim code> à l'argument code> code>, mais c'est juste un compagnon trivial:

plot(t,ylim=c(1,15))
lines(tt)


8 commentaires

... Oui, c'est le moyen de le faire initialement, mais y a-t-il un moyen de l'ajuster après les commandes ou automatiquement? Supposons que je ne sache pas que c'est C (0,15), un drapeau de réglage automatique? +1 pour indiquer la commande. Je cherche une solution générique, peut-être juste c (Valeurs), max (valeurs)) est le moyen d'aller avec un vecteur ... mais supposons que j'ai de nombreuses valeurs -vectors - Cela devient désordonné très bientôt ou?


Ok, je vois maintenant. Eh bien, vous pouvez également spécifier la colonne en faisant tracé (t, ylim = c (0, max (tt [ 2]))) mais comme vous l'avez souligné, il vous obligera à vérifier quelles données Set avoir les valeurs les plus élevées, donc ce n'est pas vraiment aussi robuste que vous le souhaitez ...


Oui, c'est correcte. J'envisage également un ajustement plus accessible. Je viens de trouver des choses assez intéressantes, peut-être du piratage avec localisateur , identifier ou quelque chose comme pratique - ne peut pas encore être sûr, rechercher ... Il est souvent utile d'ajuster la parcelle Par la souris, je ne sais pas si possible (... peut-être que cela s'appelle zoomer ne pas ajuster, pensant à voix haute).


Ce n'est vraiment pas si difficile de trouver max ([a_bunch_of_vectors]), donc pour le cas général, je vous recommande de faire cela pour configurer vos limites de l'axe des Y.


@Carlwitthoft: Oui, mais qu'en est-il avec des vecteurs de taille différents? J'ai utilisé ce évaluations <-Merge (B1 [2], B2 [2], All = T); max (évaluations) mais c'est extrêmement lent, meilleures idées? Et maintenant, si j'ai beaucoup B1, B2, B3, ... Je dois utiliser -loop ici? Ou peut-être juste rejoindre les valeurs ... Il doit y avoir une cmd, la recherche.


@hhh: Je ne sais pas pourquoi vous voulez créer un fichier de données. max accepte plusieurs arguments, donc max (B1, B2, 3.14159) retournera le max sur PI et tous les éléments des deux vecteurs.


@Carlwitthoft: Parce que je veux blesser les choses propres! évaluations <- ALLVALUESHERECOM? ? Où allvaluesherehow? est une jointure de choses différentes. J'ai résolu de cette façon maxval <-max (B1 [2], B2 [2], ...); MINVAL <-MIN (B1 [2], B2 [2], ...) , un peu répétitif encore ... J'aimerais appeler les vals juste avec évaluations .


Utilisez plage comme dans tracé (t, ylim = plage (t [2], tt [2]))



8
votes

Construire sur Geek sur la réponse de l'acide, voici une formulation générale qui aborde le problème de la plage.

plot(t,ylim=range(t[2],tt[2]))
lines(tt)


0 commentaires

1
votes

Une généralisation à la réponse de P lapointe xxx

juste au cas où la deuxième valeur de chaque série n'est pas assez grosse / petite.


0 commentaires