Une boîte à moustaches avec les limites de l'axe dans la R
J'ai des données dans l'onglet format délimité par des avec près de 400 colonnes remplies avec les valeurs ie
X Y Z A B C
2.34 .89 1.4 .92 9.40 .82
6.45 .04 2.55 .14 1.55 .04
1.09 .91 4.19 .16 3.19 .56
5.87 .70 3.47 .80 2.47 .90
Maintenant, je veux visualiser les données à l'aide de diagramme en boîte de la méthode.Bien qu'il est difficile de voir de 400 unique odf,je veux divisé en 50 chaque.ie(50 x 8).Voici le code que j'ai utilisé:
boxplot(data[1:50],xlab="Samples",xlim=c(0.001,70),log="xy",
pch='.',col=rainbow(ncol(data[1:50)))
mais j'ai eu l'erreur suivante:
Dans la parcelle.fenêtre(xlim = xlim, ylim = ylim, log = log, yaxs = pars$yaxs)
: nonfinite les limites de l'axe [GScale(-inf,4.4591,2, .); log=1]
Je veux afficher la boîte de parcelles de 400 échantillons avec 50 chaque dans 8 différentes pdf....Svp aider moi à obtenir une meilleure visualisation.
- Vous êtes traçage 400 cases dans le même graphique?
- Sont les colonnes catégorique? Si oui, pourquoi êtes-vous à l'aide d'un axe logarithmique? Si non, peut-être vous devriez normaliser l'ensemble de données de sorte que la colonne type, il obtient son propre domaine (comme par @Ben la réponse de) - vous trouverez qu'il est plus facile de donner un sens à votre colonnes comme ça.
- Oui je veux tracer sur le même graphique
- Je pense que vous trouverez qu'il est difficile de produire un sens graphique avec autant de données sur elle. Vous souhaitez peut-être sous-ensemble de vos données avec des colonnes qui sont les plus intéressantes pour votre application.
- PS un journal échelle y fait un certain sens, mais pouvez-vous expliquer un peu plus votre intention à l'aide d'une échelle logarithmique de l'axe x? (ce qui suit est la suivante @RobinGower est question ci-dessus). Aussi, qu'est-ce que
raw.expression
ci-dessus? Est-il le même quedata
? À l'aide de couleurs pour différencier les catégories est une bonne idée, mais si la commande arriverainbow(400)
puis il va être jolie mais pas vraiment être très utile pour différencier les données ... Quelle est la structure des colonnes ne sont pas représentés ci-dessus? Ils sont tous uniques, ou de faire des catégories A, B, C, X, Y, Z, ... répéter? - crus.l'expression est de même des données.Toutes les colonnes sont uniques.Généralement, j'utilise l'arc-en-ciel car elle établit une distinction entre chacune des parcelles, mais si il y a une meilleure option pour les couleurs s'il vous plaît ne me suggérer.Je prends log="y" de telle sorte qu'il y est une sorte d'Uniformité, le long de l'axe y qui utile dans la visualisation de données dans un bien de manière.
Vous devez vous connecter pour publier un commentaire.
Je suis d'accord que vous aurez à faire quelque chose d'un peu drastique de distinguer 400 cases dans le même graphique. Le code ci-dessous utilise deux trucs: (1) l'inverse d'habitude x-y de l'ordre, de sorte qu'il est plus facile de lire les étiquettes (tracée sur l'axe des y); (2) envoyer la sortie à un grand, maigre fichier PDF que vous pouvez parcourir à votre guise. J'ai aussi opté pour trier les variables, en moyenne, pour rendre l'intrigue plus facile à interpréter -- qui serait facultatif, mais je suppose que vous avez un moment difficile la recherche d'une catégorie particulière dans une de 400 diagramme en boîte, en tout cas ...
melt
! Où avez-vous été toute ma r-vie?!reshape
paquet (qui est une dépendance deggplot2
, donc, est chargé automatiquement)log="y"
au lieu delog="xy"
sauf si vous avez une bonne raison)D'autres l'ont déjà souligné que le nombre réel de boxplots ne vont pas bien fonctionner. Cependant, il y est un moyen très efficace pour analyser visuellement l'ensemble de vos variables: Simplement tracé de leurs distributions comme une image (c'est à dire heatmap). Voici un exemple montrant comment il est vraiment très facile à prendre connaissance de l'essentiel de 400 variables et 80 000 points de données individuels!
Ce sera plus utile si toutes les variables sont comparables, ou tout au moins triés sur le rationnel groupes.
hclust
et laheatmap
fonctions peut également être utile ici pour plus compliquée affiche. Bonne chance!En considérant que vous avez tracé 400 boîtes dans votre boîte de complot, je ne suis pas surpris que vous éprouvez des difficultés à voir. Supposons que vous disposez d'un moniteur qui est de 1024 pixels de large. Votre demande ne sera en mesure d'afficher les boîtes de deux pixels de large. Même avec des écrans plus grands, vous n'augmentera pas le nombre de pixels par beaucoup (un écran avec 2000 pixels en plus de vous montrer les boîtes de 5 pixels de large).
Je dirais traçage de vos boîtes sur deux ou plus de deux parcelles.