J'ai les couleurs suivantes:
c("#bbb487", "#066e9f", "#e2dfcc", "#4e766d", "#dd8047", "#d8b25c")
Je voudrais faire un tracé simple pour que je puisse voir les couleurs, soit avec ggplot2
soit avec la base R. p>
4 Réponses :
Vous pouvez utiliser l ' espace colorimétrique
pour l'exemple de tracé
library(colorspace) demoplot(c("#bbb487", "#066e9f", "#e2dfcc", "#4e766d", "#dd8047", "#d8b25c"), type = "bar")
Cela nécessite colorspace
version> = v1.4-0
publié en janvier 2019. Ce n'était pas dans les versions antérieures du package.
Oui, j'utilise le package «espace de couleurs» version 1.4-1. Merci MrFlick
Avec ggplot2
vous pouvez faire
show_colors <- function(colors) { ncol <- length(colors) plot(0,0, ylim=c(0, 1), xlim=c(0, ncol), type="n") rect(0:(ncol-1), 0, 1:ncol, 1, col = colors) } show_colors(colors)
qui renvoie
Ou vous pouvez le tourner sur le côté et imprimer les noms de couleur
show_colors2 <- function(colors) { ggplot(data.frame(id=seq_along(colors), color=colors)) + geom_tile(aes(1, id, fill=color)) + geom_text(aes(1, id, label=color)) + scale_fill_identity() } show_colors2(colors)
Ce graphique de base vous pourriez faire
library(ggplot2) show_colors <- function(colors) { ggplot(data.frame(id=seq_along(colors), color=colors)) + geom_tile(aes(id, 1, fill=color)) + scale_fill_identity() } colors <- c("#bbb487", "#066e9f", "#e2dfcc", "#4e766d", "#dd8047", "#d8b25c") show_colors(colors)
Il existe peut-être un moyen plus élégant, mais cela montre ce que vous voulez:
df <- data.frame( x = c(1,2,3,4,5,6), y = rep(1,6), c = c("#bbb487", "#066e9f", "#e2dfcc", "#4e766d", "#dd8047", "#d8b25c") ) farbe <- c("#bbb487", "#066e9f", "#e2dfcc", "#4e766d", "#dd8047", "#d8b25c") ggplot(df, aes(x,y, col=c))+geom_point(size=8)+ theme_bw()+ scale_color_manual( name="Colors", values = farbe, breaks = c("#bbb487", "#066e9f", "#e2dfcc", "#4e766d", "#dd8047", "#d8b25c"))
Ce n'était pas bien et je sais que les réponses ci-dessus sont les meilleures Mais je voulais apporter les améliorations nécessaires pour offrir au moins une réponse correcte - du moins en ce qui concerne le choix des couleurs:
library(ggplot2) df <- data.frame( x = c(1,2,3,4,5,6), y = rep(1,6), c = c("#bbb487", "#066e9f", "#e2dfcc", "#4e766d", "#dd8047", "#d8b25c") ) ggplot(df, aes(x,y, col=c))+geom_point(size=8)
Ce ne sont en fait pas les bonnes couleurs. Ce sont les couleurs par défaut de la palette de couleurs ggplot.
Merci, monsieur Flick. Je n'ai pas reconnu cela.
Une option légère qui ne nécessite que grid
,
grid::grid.raster(t(c("#bbb487", "#066e9f", "#e2dfcc", "#4e766d", "#dd8047", "#d8b25c")), interp=FALSE)