Включение stat_smooth только к 1 фасету в ggplot2

ДОВОД "ПРОТИВ"

я нахожу, что выполнение большой обработки в хранимых процедурах сделало бы Ваш сервер БД единственной точкой негибкости, когда дело доходит до масштабирования Вашего действия.

Однако выполнение всего этого уплотнения в Вашей программе в противоположность SQL-серверу, могло бы позволять Вам масштабироваться больше, если у Вас есть несколько серверов, который выполняет Ваш код. Конечно, это не относится к сохраненному procs, который только делает нормальную выборку или обновление, но к, которые выполняют больше обработки как цикличное выполнение по наборам данных.

ПРОФЕССИОНАЛЫ

  1. Производительность для того, что это может стоить (избегает анализа запроса драйвером DB / воссоздание плана и т.д.)
  2. Манипулирование данными не встраивается в код C/C ++/C#, что означает, что у меня есть меньше низкоуровневого кода для просмотра. SQL является менее подробным и легче просмотреть, когда перечислено отдельно.
  3. из-за разделительных людей в состоянии найти и снова использовать намного легче код SQL.
  4. Ее более легкое для изменения вещей, когда схема изменяется - просто необходимо дать тот же вывод коду, и это будет работать просто великолепно
  5. Легче к порту к различной базе данных.
  6. я могу перечислить отдельные полномочия на своих хранимых процедурах и управлять доступом на том уровне также.
  7. я могу представить свой запрос данных / код персистентности, отдельный от моего кода преобразования данных.
  8. я могу реализовать изменяемые условия в своей хранимой процедуре, и было бы легко настроить на сайте для клиентов.
  9. становится легче использовать некоторые автоматизированные инструменты для преобразования моей схемы и операторов вместе скорее чем, когда это встраивается в моем коде, где я должен был бы выследить их.
  10. Удостоверяющиеся лучшие практики для доступа к данным легче, когда у Вас есть весь свой код доступа к данным в единственном файле - я могу проверить на запросы, что получают доступ не производительная таблица или что, который использует более высокий уровень сериализации или выбирает * в коде и т.д.
  11. , становится легче найти изменения схемы / изменения логики манипулирования данными, когда все это перечислено в одном файле.
  12. становится легче сделать поиск и редактирования замены на SQL, когда они находятся в том же месте, например, изменение / добавляют, что операторы изоляции транзакции для всех сохранили procs.
  13. я и парень DBA находим, что наличие отдельного файла SQL легче / удобный, когда DBA должен рассмотреть мой материал SQL.
  14. Наконец Вы не должны волноваться об атаках с использованием кода на SQL, потому что некоторый ленивый член Вашей команды не использовал параметризованные запросы, когда использование встроило sqls.
16
задан jebyrnes 15 October 2009 в 05:07
поделиться

2 ответа

Не думайте о выборе фасета, подумайте о предоставлении подмножества ваших данных в stat_smooth:

ggplot(df, aes(x, y)) +
  geom_point() + 
  geom_smooth(data = subset(df, z =="a")) + 
  facet_wrap(~ z)
35
ответ дан 30 November 2019 в 16:36
поделиться

Конечно, позже я ответил на свой вопрос. Хотя, есть ли менее хитрый способ сделать это? Интересно, можно ли было бы приспособить разные функции к разным панелям.

Один из способов - использовать + scale_fill_manual и scale_colour_manual. Они позволяют указать, какие цвета будут использоваться. Итак, в этом случае, предположим, у вас есть

a<-qplot(x, y, facets=~z)+stat_smooth(method="lm", aes(colour=z, fill=z))

. Вы можете указать цвета для заливки и цвета, используя следующее. Обратите внимание, что второй цвет четкий, поскольку он использует шестнадцатеричное значение, а два последних числа представляют прозрачность. Итак, 00 = ясно.

a+stat_fill_manual(values=c("grey", "#11111100"))+scale_colour_manual(values=c("blue", "#11111100"))
3
ответ дан 30 November 2019 в 16:36
поделиться
Другие вопросы по тегам:

Похожие вопросы: