Je suis nouveau à R, donc mon problème est simple. J'essaie de créer un nuage de points qui montre des données sur tous les pays, puis de dimensionner les bulles par population et de les colorier par région. J'ai tout accompli sauf la coloration. Voici mon code:Coloration Points de données par variable catégorielle
attach(gapminder2)
colors(distinct = FALSE)
radius<-sqrt(gapminder2$Population/pi)
plot(log(`CO2 Emissions per capita`), log(Income), main="PerCapita GDP vs CO2 Emissions by Country", xlab="CO2 Emissions (tons/person)", ylab="Per Capita GDP (US$)")
grid()
symbols(log(`CO2 Emissions per capita`), log(Income), main="PerCapita GDP vs CO2 Emissions by Country", xlab="CO2 Emissions (tons/person)", ylab="Per Capita GDP (US$)", circles=radius, inches=0.25)
Tout cela fonctionne très bien et produit le graphique suivant:
Dans l'ensemble de données (appelé "gapminder2"), j'ai une variable "Région" . J'ai essayé de le convertir en une variable factorielle (Région < - as.factor) mais je ne sais toujours pas comment attribuer à chaque région sa propre couleur sur le graphique (j'ai 8 régions différentes).
Voir [cette réponse] (https://stackoverflow.com/questions/7721262/colouring-plot-by -facteur-en-r). Essayez d'ajouter ajouter 'col = gapminder2 $ Region' à' plot' – blondeclover
Ok, j'ai ajouté cela, mais j'ai reçu le message d'erreur: "nom de couleur invalide 'Moyen-Orient'". Savez-vous comment je pourrais attribuer les couleurs à chaque région dans la variable? @blondeclover –
Le fait que cela n'ait pas fonctionné suggère que gapminder2 $ Region n'est pas stocké en tant que facteur. Essayez de faire 'gapminder2 $ Region <- as.factor (gapminder2 $ Region)', puis utilisez la solution @blondeclover. –