Я использую растровую функцию, как показано на строках ниже. Моя последняя строка производит некоторый вывод. Этот вывод имеет строку, которая говорит dimensions : 240, 320, 76800 (nrow, ncol, ncell)
. Я бы хотел перепечатать этот образ, но сказать только первые 200 строк и первые 300 столбцов. Как я могу это сделать? Вторая последняя строка ниже отображает все изображение
f <- "pictures/image1-1421787394.jpeg"
f
r <- raster(f)
plot(r);
r
============================= update1
Я сделал png(filename = '~/x.png');par(mar=rep(0, 4), xpd = TRUE, oma=rep(0, 4),bty='n') ; plot(r,xlim=c(0,200),ylim=c(0,200),legend=FALSE,axes=FALSE); dev.off()
, чтобы сохранить обрезанное изображение. Я смог избавиться от легенды и топоров и черного ящика. Но проблема в том, что сохраненное изображение содержит гораздо больше, чем обрезанная часть - например, белая часть вокруг изображения. Я хочу сохранить только обрезанную часть оригинала (сохранить размер изображения 200 * 200 пикселей). Пожалуйста, дайте мне знать, как это сделать?
Кроме того, как я могу добавить красный квадрат, соответствующий вышеуказанной обрезанной части, к исходному изображению? Я имею в виду, что я хотел бы получить красный квадрат (только края) в верхней части исходного изображения, а затем сохранить это (исходное изображение + квадрат) в качестве нового изображения.
Как я могу это сделать?
Update2 ++++++++++++++++++++++++++++++++++++++++++++++++
добавление повторяемого примера, чтобы показать, что я имею в виду на белом фоне
последняя строка ниже отображает обрезанное изображение. Я хочу, чтобы это изображение было 100 * 100, так как мои xlim и ylim равны 100. Но я вижу белый фон, как показано в примере ниже. (вы не можете видеть фон, но если вы запустите код на своей машине и откройте изображение, вы увидите его)
library(raster)
r <- raster(nrow=240, ncol=320)
values(r) <- 1:ncell(r)
plot(r)
plot(r,xlim=c(0,100),ylim=c(0,100),legend=FALSE,axes=FALSE,frame.plot=F)