R의 scale_colour_discrete 함수

Jinku Hu 2024년2월15일
  1. scale_colour_discrete를 사용하여 R에서colour스케일 레이블 수정
  2. scale_colour_discrete를 사용하여 R에서colour스케일 이름 수정
R의 scale_colour_discrete 함수

이 기사에서는 R에서scale_colour_discrete를 사용하는 방법을 소개합니다.

scale_colour_discrete를 사용하여 R에서colour스케일 레이블 수정

scale_colour_discrete는 일반적으로 이산 값을 가져야하는colour 스케일 레이블을 수정하는 데 사용할 수 있습니다. 이 경우 필터링 된 ‘babynames’데이터 세트를 사용하는 예를 보여줍니다. 여기에서 5 개의 이름 만 추출하여 더 간단하게 만듭니다. geom_line을 사용하여 선 플롯을 그립니다. ‘x’/ ‘y’축에 매핑 된 변수는 아기의 수와 출생 연도입니다. 이름이 ‘색상’척도에 매핑되므로 각기 다른 색상이 매핑되는 범례가 있습니다. 그들의. scale_colour_discrete 함수의labels 매개 변수를 사용하여 기존 스케일 레이블을 대체 할 수있는 값 벡터를 전달할 수 있습니다.

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

r 1의 scale_colour_discrete

scale_colour_discrete를 사용하여 R에서colour스케일 이름 수정

scale_colour_discrete함수의 또 다른 유용한 매개 변수는색상스케일 제목을 제어하는이름입니다. 사용자 정의 문자열 값은name인수에 할당 될 수 있으며, 다음 예제 코드에서 수정 된 범례 이름이됩니다.

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

r 2의 scale_colour_discrete

이전 플롯은 단일 패널에 모든 선을 그리지 만facet_wrap함수를 사용하여 각 선을 별도의 선에 출력 할 수 있습니다. facet_wrap은 첫 번째 인수로 매핑해야하는 변수를받습니다.

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

r 3의 scale_colour_discrete

작가: Jinku Hu
Jinku Hu avatar Jinku Hu avatar

Founder of DelftStack.com. Jinku has worked in the robotics and automotive industries for over 8 years. He sharpened his coding skills when he needed to do the automatic testing, data collection from remote servers and report creation from the endurance test. He is from an electrical/electronics engineering background but has expanded his interest to embedded electronics, embedded programming and front-/back-end programming.

LinkedIn Facebook

관련 문장 - R Plot