Есть ли способ получить функцию plot
для генерации равных xlim
и ylim
автоматически? Я не хочу заранее определять диапазон исправлений, но хочу, чтобы функция plot
приняла решение о самом диапазоне. Однако я ожидаю, что он будет выбирать один и тот же диапазон для x и y.Установка равных xlim и ylim в функции графика
ответ
Возможное решение состоит в определении обертку для функции участка:
plot.Custom <- function(x, y, ...) {
.limits <- range(x, y)
plot(x, y, xlim = .limits, ylim = .limits, ...)
}
Один из способов - интерактивно манипулировать, а затем выбрать правильный. Ползунок появится после запуска следующего кода.
library(manipulate)
manipulate(
plot(cars, xlim=c(x.min,x.max)),
x.min=slider(0,15),
x.max=slider(15,30))
Ну, это действительно крутой вариант, и спасибо, что поделились им со мной. Однако это не решает мою проблему. Я хочу создать 100 графиков для разных наборов данных, и я не могу манипулировать каждым из них. – Milad
Ну, вы не упомянули об этом в OP. – user227710
Я не в курсе в любом случае сделать это, используя сюжет (не значит, что не один) , ggplot может быть путем; он поддается более ретроактивному изменению, поскольку он разработан вокруг системы слоев.
library(ggplot2)
#Creating our ggplot object
loop_plot <- ggplot(cars, aes(x = speed, y = dist)) +
geom_point()
#pulling out the 'auto' x & y axis limits
rangepull <- t(cbind(
ggplot_build(loop_plot)$panel$ranges[[1]]$x.range,
ggplot_build(loop_plot)$panel$ranges[[1]]$y.range))
#taking the max and min(so we don't cut out data points)
newrange <- list(cor.min = min(rangepull[,1]), cor.max = max(rangepull[,2]))
#changing our plot size to be nice and symmetric
loop_plot <- loop_plot +
xlim(newrange$cor.min, newrange$cor.max) +
ylim(newrange$cor.min, newrange$cor.max)
Обратите внимание, что объект loop_plot имеет класс ggplot и обычно не печатает до его вызова. Я использовал набор данных для автомобилей в приведенном выше коде, чтобы показать, что происходит, но просто подставьте в своем наборе данных [s], а затем сделайте все, что посмертно, ваша конечная цель. Вы также сможете добавлять заголовки и т. Д., Основанные на имени набора данных и так далее, что, скорее всего, приведет к более четкой визуализации из вашего цикла. Надеюсь, это сработает для ваших нужд.
- 1. Автоматически Rescale ylim и xlim в Matplotlib
- 2. разница между xlim/ylim и оси границ
- 3. Matplotlib ylim и xlim не работают в комбинации графика рассеяния и графика линии или fill_between
- 4. Matplotlib: Поиск xlim и ylim после масштабирования
- 5. озадачены xlim/ylim поведение в R
- 6. igraph осей xlim ylim участок неверно
- 7. Как использовать xlim и ylim при использовании ax.axis ('equal')?
- 8. Как получить xlim, ylim значения фигуры в python?
- 9. Изменение xlim автоматически изменяет ylim для geom_density
- 10. Как установить xlim и ylim для подзадачи в matplotlib
- 11. Как манипулировать xlim и ylim для построения карты в r
- 12. Когда использовать ось вместо xlim и ylim в matlab?
- 13. График рассеяния в matplotlib не обновляется xlim и ylim
- 14. Автоматически сделать Matplotlib осей квадратное и равноправное xlim и ylim
- 15. установки xlim и ylim при использовании Matplotlib (что-то странное)
- 16. R: xlim, ylim и zlim не работает rgl.plot3d
- 17. Установка двух указателей, равных в вспомогательной функции
- 18. Проблемы с xlim и ylim в сноубордистов() и вставки текста с geom_text() в R
- 19. установка равных высот столбцам
- 20. Установка двух массивов равных
- 21. Выполнение нескольких функций графика
- 22. Ошибка при создании сюжета TimeSeries в R: Ошибка в plot.window (xlim, ylim, журнал, ...): нужно конечное 'ylim' значения
- 23. R: нужны конечные значения «ylim» в функции
- 24. r - Как установить диапазон xlim и ylim в графике с высоким разрешением?
- 25. Как сохранить график непрерывным после установки xlim и ylim с использованием levelplot в R?
- 26. R: Заголовки столбцов как ylim и Роу имен как xlim в R
- 27. Ошибка построения с Survplot и xlim в R
- 28. Установка xlim для Pandas График DataFrame
- 29. Установка двух свойств, равных объявлению
- 30. Изменение подстроенных графиков ylim
Достаточно ли этого: 'x <- 1:11; y <- seq (11, 11 * 11, by = 11); plot (x, y, xlim = range (x, y), ylim = range (x, y)) '? – Jota
Ну, это так :) Спасибо – Milad