Разница между опциями передачи в aes () и за ее пределами в ggplot2

После возиться с параметрами размера точки в ggplot2, я заметил примеры, в которых размер передавался как внутри, так и вне параметра aes() geom_point() . На странице «geom_point () на сайте Хэдли :

 p <- ggplot(mtcars, aes(wt, mpg)) # passed inside p + geom_point(aes(size = qsec)) p + geom_point(aes(size = qsec)) + scale_area() # passed outside p + geom_point(colour = "red", size = 3) p + geom_point(colour = "grey50", size = 4) 

Я обнаружил, что они ведут себя по-разному, когда речь идет о легендах. Когда вы проходите внутри aes() я могу получить легенду, хотя мне нужно установить перерывы, хотя у меня есть только две точки разного размера; в противном случае я получаю диапазон в пять точек, даже если используется только 2.

Кроме того, пропущенные размеры не понятны; Мне нужно указать относительный размер с помощью range=c(min,max) и установить разрывы только на два размера вместо пяти по умолчанию.

Если я передаю размер за пределами aes() , размеры кажутся почетными, но я не могу получить легенду на своем сюжете; Я пробовал scale_size , scale_size_continuous и scale_size_manual без успеха.

На geom_point() есть следующее:

Эстетику можно использовать с geom_point. Эстетика сопоставляется с переменными в данных с помощью функции aes: geom_point(aes(x = var))

Весы контролируют, как переменная отображается на эстетику и перечислены после каждой эстетики.

[Список всех эстетических вариантов здесь (форма, цвет, размер и т. Д.)]

Из этого все еще не совсем ясно, как параметры (размер в этом вопросе, но это должно быть значимым для других эстетик) внутри и снаружи aes() влияют на результат.

Когда указано внутри aes , эстетика сопоставляется с значением переменной в данных. Поскольку существует отображение между данными и видимой эстетикой, есть легенда, которая показывает, что отображение. За пределами вызова aes эстетика просто устанавливается на определенное значение. В примерах, которые вы показываете, размер (и цвет) устанавливаются одинаковыми для всех точек. В этом случае нет необходимости в легенде, потому что размер (или цвет) не передает никакого значения (в отношении базовых данных).

Проблема, которую вы видите с легендой, связана с тем, что размер отображается на непрерывную переменную. Бывает, что в ваших данных есть только два значения, но в принципе непрерывная переменная может принимать любое значение. Если это действительно просто переменная выбора из двух, сделайте ее фактором (либо в исходных данных, либо в эстетическом вызове aes(size=factor(qsec)) .

  • Как получить размер объекта JavaScript?
  • Является ли sizeof (некоторый указатель) всегда равным четырем?
  • Установить ширину столбца переменной текста в printf
  • Различные размеры шрифтов строк в том же TextView
  • Размер массива (длина) в C #
  • Масштабируйте ImageIcon автоматически до размера метки
  • увеличить размер кучи java навсегда?
  • Как я могу получить размер файла в C?
  • Определите размер слова моего процессора
  • В C, почему sizeof (char) 1, когда 'a' является int?
  • Есть ли причина не использовать целые типы фиксированной ширины (например, uint8_t)?
  • Interesting Posts

    Spring – @Transactional – Что происходит в фоновом режиме?

    исключение в streamе ‘main’ java.lang.NoClassDefFoundError:

    Как получить информацию об использовании аккумулятора Android по заявке

    Можете ли вы указать git-shell в .ssh / authorized_keys для ограничения доступа только к git-командам через ssh?

    Возможно ли иметь функциональный индекс в MySQL?

    Как передать переменную от Activity to Fragment и передать ее обратно?

    как поместить текст слева от переключателя в андроиде

    Что означает (x) в C (например, kernel ​​Linux)?

    Как увеличить тайм-аут запроса в IIS?

    Использование диспетчера WPF в модульных тестах

    System.loadLibrary (…) не смог найти родную библиотеку в моем случае

    Как получить JSON-файл в Angular 2

    Добавление пользовательских заголовков в запросы ресурсов WebView – андроид

    Почему акселерометр: didAccelerate: устарел в IOS5?

    При удалении диска при доступе файловая система повреждена, можно ли ее устранить?

    Давайте будем гением компьютера.