Как настроить и удалить метки условных обозначений на графике кросс-таблицы? - PullRequest
2 голосов
/ 06 апреля 2020

enter image description here По сути, я хочу, чтобы точка с надписью 8 читалась как "Не понравилось", а 18 - как "Понравилось". Я хочу удалить остальные 4 пункта в моей легенде. Я не уверен, как им удалось туда добраться.

Я пытался использовать scale_fill_discrete () и scale_fill_manual (), но они здесь не работают. Любые советы?

  #Load libraries
  library(ggplot2)
  library(dplyr)

  #Specify foods and countries
  foods <- c("cake", "cookies", "chocolate", "brownies")
  nations <- c("[![Belarus][1]][1]", "Zimbabwe", "Tanzania", "Morocco")

  #Create the data frame
  crosstab <- expand.grid(foods, nations)
  crosstab$value <- c(8, 8, 18, 18, 18, 18, 8, 18, 18, 18, 8, 18, 18, 8, 8, 18)

  #Plot the visualization
  final_plot <- ggplot(crosstab, aes(Var1, Var2)) + geom_point(aes(size = value), color = "#3484DA") + xlab("") + ylab("")

  #Add design elements
  final_plot + scale_size_continuous(range = c(5, 10)) +
    scale_x_discrete(position = "top") +
    theme(legend.position = "bottom",
          legend.title = element_blank(),
          legend.spacing.x = unit(0.1, "inches"),
          axis.text.x = element_text(size = 10.5, face = "bold"),
          axis.text.y = element_text(size = 10.5, face = "bold"),
          axis.ticks = element_blank(),
          panel.grid.major = element_blank(),
          panel.grid.minor = element_blank(),
          panel.background = element_blank())

1 Ответ

0 голосов
/ 06 апреля 2020

Вы можете добавить breaks и labels в ваш scale_size_continuous:

  final_plot + scale_size_continuous(range = c(5, 10), breaks = c(8,18), labels = c("Disliked","Liked")) +
    scale_x_discrete(position = "top") +
    theme(legend.position = "bottom",
          legend.title = element_blank(),
          legend.spacing.x = unit(0.1, "inches"),
          axis.text.x = element_text(size = 10.5, face = "bold"),
          axis.text.y = element_text(size = 10.5, face = "bold"),
          axis.ticks = element_blank(),
          panel.grid.major = element_blank(),
          panel.grid.minor = element_blank(),
          panel.background = element_blank())

enter image description here

Отвечает ли он на ваш вопрос?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...