mis à jour avec des données d'échantillon: Ce que j'essaie de faire est de tracer une carte à barres empilée et Modifier avec la solution:
Suivez le lien marqué comme réponse ci-dessus, tracez chaque barre individuellement à l'aide de geom_bar et ajoutez la fonction de réorganisation - AES (remplissage = réorganisation (élément, valeur +)) p> p>
3 Réponses :
Typiquement, lorsque j'ai besoin de réorganiser une variables de caractère pour afficher, il est facile de convertir la variable en un facteur. Les facteurs sont un peu notoires dans R pour causer des problèmes, mais beaucoup d'entre eux peuvent être facilement surmontés avec l'aide du package la fonction qui donne ce qui suit: p> Je préfère Appelez le Si vous souhaitez en savoir plus sur < Code> forcats code>, je suggère ce site de teneur en ligne ou si vous voulez apprendre En savoir plus sur les facteurs dans R en général, commencez par le chapitre sur les facteurs dans R pour la science de données em>. P> Cette question a depuis changé depuis mon réponse originale. Je crois qu'une réponse adéquate peut être trouvée à la question liée ici p> p> FORCATS CODE>. En fait, tout le but de l'emballage est de manipuler plus facilement de travailler avec des facteurs dans la fonction R.
FORCATS :: FCT_REODE CODE> est destiné à réorganiser un facteur par une autre variable (basé sur des valeurs médianes par défaut). Dans ce cas particulier, nous convertissons la colonne code> substrat code> en un facteur et la réorganisation du facteur code> Substrate code> basé sur
pourcentage code> ... tout dans un Un seul appel. p>
fct_reorder code> appel dans mon
ggplot code> appel, car cela ne nécessitera pas de modification de la trame de données sous-jacente. P>
note h3>
Merci pour le commentaire! J'ai essayé cela et mes données ne sont que des réorganisations dans un ordre cohérent, mais pas en pourcentage de la valeur. Peut-être que les échantillons que j'ai fournis sont inexacts, j'ai téléchargé mes données réelles qui pourraient être différentes.
Ceci est exactement ce que je cherchais. Pouvez-vous mettre à jour votre réponse avec une brève description du package code> Forcats code>?
@shadow_Dev heureux d'aider! J'ai mis à jour ma réponse pour fournir plus de détails, ainsi que des liens justificatifs
Je pense que forcats code> est un excellent moyen, mais avant que nous ayons cela - ou lorsque vous voulez simplement utiliser la base R sans bibliothèques, Ce est plus de l'approche traditionnelle:
Merci pour le conseil! J'ai essayé cela et mes données ne sont que des réorganisations dans un ordre cohérent, mais pas en pourcentage de la valeur. Peut-être que les échantillons que j'ai fournis sont inexacts, j'ai téléchargé mes données réelles qui pourraient être différentes.
Ceci fonctionnera pour vous à l'aide de la commande de la commande code> dans l'argument de remplissage. p> p>
Merci pour cela! J'ai essayé cela et mes données ne sont que des réorganisations dans un ordre cohérent, mais pas en pourcentage de la valeur. Peut-être que les échantillons que j'ai fournis sont inexacts, j'ai téléchargé mes données réelles qui pourraient être différentes.
Bienvenue à! Juste une tête en tête - la fonctionnalité "Snippet" / Code d'exécution ne fonctionnera pas sur le code R (lorsque vous tapez une question sur SO - cela fonctionne pour JS, CSS et HTML je crois).
@LookingForBirds: Avez-vous essayé ceci Stackoverflow.com/questions/51098496/...
Dans l'exemple que vous donnez, il semble que le tri sur une variable est suffisant --- Un ordre cohérent fonctionnera entre les sites, par exemple, A, E, D, B, G, F, C dans une seule réponse. Obtenir la commande d'être différent dans différentes barres (différents sites) est beaucoup plus difficile. Si c'est ce que vous êtes après B>, je vous recommanderais de fournir des données d'échantillonnage qui le nécessite, par exemple, de faire un substrat un pourcentage le plus élevé sur un seul site et le pourcentage le plus bas de l'autre.
Merci pour les commentaires! @Gregor Je n'essaie pas de le trier en fonction d'un ordre cohérent, mais basé sur les valeurs de pourcentage du substrat, du plus grand au plus petit sur chaque site. Ajoutera quelques données supplémentaires supplémentaires!
Excellent. Je recommanderais Simplifier votre exemple B> plutôt que de simplement y ajouter, de le rendre très clair. Vous n'avez pas besoin de 7 substrats et de 4 sites pour obtenir ce point à travers --- 3 substrats et 2 ou 3 sites sont nombreux. Assurez-vous simplement qu'il illustre le problème --- Les réponses trier jusqu'à présent implicitement les substrats par le pourcentage médian (
fct_reorder code>), le pourcentage moyen
réorganiser code> ou le pourcentage maximal ( Réponse de Hack-R) sur tous les sites. Assurez-vous que vos exemples de données donneraient Différents de commande de substrat pour chaque site i> depuis que ce que vous voulez.
Avec un peu de piquer, Cela ressemble à une dupe probable ... La solution de glace de glace semble assez bonne.
Vous avez raison, ce que j'essaie, c'est d'obtenir des commandes différentes pour chaque site. Et oui, ce lien semble prometteur, merci, je vais donner une allée!
Je vais fermer cela comme une dupe. Si vous ne pouvez pas le faire fonctionner, modifiez la question pour montrer une tentative, et nous allons re-ouvrir et le comprendre. (Aussi, dans ce cas, je suggérerais à nouveau d'éditer vos échantillons de données à être simple b>;)
Merci! réussi à le faire fonctionner :)