Die scale_colour_discrete Funktion in R

  1. Verwenden Sie scale_colour_discrete, um colour-Skalenbeschriftungen in R . zu ändern
  2. Verwenden Sie scale_colour_discrete, um den Skalennamen colour in R . zu ändern

In diesem Artikel wird die Verwendung von scale_colour_discrete in R vorgestellt.

Verwenden Sie scale_colour_discrete, um colour-Skalenbeschriftungen in R . zu ändern

scale_colour_discrete kann verwendet werden, um colour-Skalenbeschriftungen zu ändern, die im Allgemeinen diskrete Werte haben müssen. In diesem Fall demonstrieren wir ein Beispiel mit dem gefilterten Datensatz babynames, aus dem nur fünf Namen extrahiert werden, um es einfacher zu machen. Wir zeichnen ein Liniendiagramm mit geom_line. Zugeordnete Variablen auf der x/y-Achse sind die Anzahl der Babys und die Jahre, in denen sie geboren wurden. Da die Namen der colour zugeordnet sind, haben sie eine Legende, in der jedem unterschiedliche Farben zugeordnet sind von ihnen. Mit dem Parameter labels der Funktion scale_colour_discrete können wir einen Vektor von Werten übergeben, durch den wir die vorhandenen Skalenbeschriftungen ersetzen können.

library(ggplot2)
library(gridExtra)
library(babynames)
library(dplyr)

dat <- babynames %>%
  filter(name %in% c("Alice", "Maude", "Mae",
                     "Annie", "Ella")) %>% filter(sex=="F")

p3 <- ggplot(dat, aes(x = year, y = n, colour = name)) +
  geom_line() +
  scale_colour_discrete(
    labels = c("Al", "Mau", "Mae", "An", "El")) +
  scale_y_continuous(
    breaks = seq(0, 13000, 1000),
    name = "Number of babies") +
  scale_x_continuous(
    breaks = seq(1880, 2017, 12),
    name = "Year") +
  theme(
    legend.position = "left",
    legend.background = element_rect(fill = "white", colour = "black"),
    plot.title = element_text(
      size = rel(1.2), lineheight = .9,
      family = "Calibri", face = "bold", colour = "brown"
    )) +
  ggtitle("Name Popularity Through Years")

p3

scale_colour_discrete in r 1

Verwenden Sie scale_colour_discrete, um den Skalennamen colour in R . zu ändern

Ein weiterer nützlicher Parameter der Funktion scale_colour_discrete ist name, der den Skalentitel colour steuert. Der benutzerdefinierte Zeichenkettenwert kann dem Argument name zugewiesen werden, was im folgenden Beispielcode zu einem geänderten Legendennamen führt.

library(ggplot2)
library(gridExtra)
library(babynames)
library(dplyr)

dat <- babynames %>%
  filter(name %in% c("Alice", "Maude", "Mae",
                     "Annie", "Ella")) %>% filter(sex=="F")

p3 <- ggplot(dat, aes(x = year, y = n, colour = name)) +
  geom_line() +
  scale_colour_discrete(
    name = "Name",
    labels = c("Al", "Mau", "Mae", "An", "El")) +
  scale_y_continuous(
    breaks = seq(0, 13000, 1000),
    name = "Number of babies") +
  scale_x_continuous(
    breaks = seq(1880, 2017, 12),
    name = "Year") +
  theme(
    legend.position = "left",
    legend.background = element_rect(fill = "white", colour = "black"),
    plot.title = element_text(
      size = rel(1.2), lineheight = .9,
      family = "Calibri", face = "bold", colour = "brown"
    )) +
  ggtitle("Name Popularity Through Years")


p3

scale_colour_discrete in r 2

Der vorherige Plot zeichnet alle Linien auf einem einzigen Panel, aber wir können jede Linie mit der Funktion facet_wrap auf einem separaten ausgeben. facet_wrap nimmt als erstes Argument die Variablen, die gemappt werden müssen.

library(ggplot2)
library(gridExtra)
library(babynames)
library(dplyr)

dat <- babynames %>%
  filter(name %in% c("Alice", "Maude", "Mae",
                     "Annie", "Ella")) %>% filter(sex=="F")

p4 <- ggplot(dat, aes(x = year, y = n, colour = name)) +
  geom_line() +
  scale_colour_discrete(
    name = "Name",
    labels = c("Al", "Mau", "Mae", "An", "El")) +
  scale_y_continuous(
    breaks = seq(0, 13000, 1000),
    name = "Number of babies") +
  scale_x_continuous(
    breaks = seq(1880, 2017, 12),
    name = "Year") +
  theme(
    legend.position = "left",
    legend.background = element_rect(fill = "white", colour = "black"),
    plot.title = element_text(
      size = rel(1.2), lineheight = .9,
      family = "Calibri", face = "bold", colour = "brown"
    )) +
  ggtitle("Name Popularity Through Years") +
  facet_wrap(vars(name))

p4

scale_colour_discrete in r 3

Verwandter Artikel - R Plot

  • Gruppierte Boxplots in R . erstellen
  • ylim() und xlim() in R