Как создавать изменяемые темы с использованием CSS и JavaScript

Вы так близки!

В вашем коде выше ggplot интерпретирует вашу заливку как переменные в вашем наборе данных darkgreen и factor firebrick - и не имеет никакого способа зная, что эти метки являются цветами , а не, скажем, названиями видов животных.

Если вы добавите scale_fill_identity() в конец вашего графика, как показано ниже, он будет интерпретировать эти строки в виде цветов (идентификатор ), а не как функции данных.

Одно из преимуществ этого подхода - отличный ответ от превосходного марата выше: если у вас сложный сюжет (скажем, , используя geom_segment(), со стартовым значением и конечным значением для каждого наблюдения), и вы хотите применить две заполняющие шкалы на своих данных (одна шкала для начального значения и другая шкала для конечного значения), вы можете выполнить условное логики на этапе обработки данных, затем используйте scale_fill_identity() для соответствующего цветного наблюдения.

ggplot(
  data=dist.x,
  aes(
    x = sim_con,
    fill = ifelse(dist.x$sim_con==1.55, "darkgreen", "firebrick")
  )
) +
geom_histogram(
  colour = "black",
  binwidth = .01
) +
theme(legend.position="none") +
scale_fill_identity()
29
задан YakovL 20 October 2017 в 09:04
поделиться