Overlay shapefile on multiband raster using ggRGB and ggplot2 in R Planned maintenance scheduled April 17/18, 2019 at 00:00UTC (8:00pm US/Eastern) Announcing the arrival of Valued Associate #679: Cesar Manara Unicorn Meta Zoo #1: Why another podcast?Choropleth in R: custom breaks and plottingUsing stat_density2d with coord_map in ggplot2Fortifying re-projected shapefile for ggplot2 in RPlotting a certain range in azimuthal projection using ggplot2How can I create a choropleth from the 2010 census ZCTA shapefile using R and ggplot2?Rasterizing getCover not working in R?Map with ggplot2 and bubblesCombining postal codes into sales territories by value using R and ggplot2?Reducing processing time of multiband satellite images using RSToolbox in RGgplot2 map with colored background and coord_map()

What is Wonderstone and are there any references to it pre-1982?

At the end of Thor: Ragnarok why don't the Asgardians turn and head for the Bifrost as per their original plan?

Is it ethical to give a final exam after the professor has quit before teaching the remaining chapters of the course?

String `!23` is replaced with `docker` in command line

Do I really need recursive chmod to restrict access to a folder?

Extract all GPU name, model and GPU ram

Book where humans were engineered with genes from animal species to survive hostile planets

What is the logic behind the Maharil's explanation of why we don't say שעשה ניסים on Pesach?

Fundamental Solution of the Pell Equation

How to align text above triangle figure

2001: A Space Odyssey's use of the song "Daisy Bell" (Bicycle Built for Two); life imitates art or vice-versa?

Why didn't this character "real die" when they blew their stack out in Altered Carbon?

Can a non-EU citizen traveling with me come with me through the EU passport line?

Seeking colloquialism for “just because”

List of Python versions

List *all* the tuples!

Why do people hide their license plates in the EU?

ListPlot join points by nearest neighbor rather than order

How to deal with a team lead who never gives me credit?

3 doors, three guards, one stone

Why did the Falcon Heavy center core fall off the ASDS OCISLY barge?

What exactly is a "Meth" in Altered Carbon?

Why was the term "discrete" used in discrete logarithm?

What would be the ideal power source for a cybernetic eye?



Overlay shapefile on multiband raster using ggRGB and ggplot2 in R



Planned maintenance scheduled April 17/18, 2019 at 00:00UTC (8:00pm US/Eastern)
Announcing the arrival of Valued Associate #679: Cesar Manara
Unicorn Meta Zoo #1: Why another podcast?Choropleth in R: custom breaks and plottingUsing stat_density2d with coord_map in ggplot2Fortifying re-projected shapefile for ggplot2 in RPlotting a certain range in azimuthal projection using ggplot2How can I create a choropleth from the 2010 census ZCTA shapefile using R and ggplot2?Rasterizing getCover not working in R?Map with ggplot2 and bubblesCombining postal codes into sales territories by value using R and ggplot2?Reducing processing time of multiband satellite images using RSToolbox in RGgplot2 map with colored background and coord_map()



.everyoneloves__top-leaderboard:empty,.everyoneloves__mid-leaderboard:empty,.everyoneloves__bot-mid-leaderboard:empty margin-bottom:0;








2















I am trying to use ggplot2 to map a polygon feature class over a raster brick (created from multiple Landsat band images). I'm able to map the polygons and the raster separately, but when I try to have them together (following the last code chunk at http://bleutner.github.io/RStoolbox/rstbx-docu/ggRGB.html RStudio crashes (even after restarting the computer).



ggRGB attempt:



fallowFields <- rgdal::readOGR(dsn = fgdb, layer = 'Fallowing2018')
fallowFieldsWGS84 <- spTransform(fallowFields, crs(L8_20180420_brick))

fallowFieldsDataFrame <- fallowFieldsWGS %>% fortify

landsatAprilCropped <- raster::crop(L8_20180420_brick, raster::extent(fallowFields))

p <- ggplot()
p + ggRGB(img = landsatAprilCropped,
r = 3,
g = 2,
b = 1,
stretch = 'hist',
ggLayer = TRUE) +
geom_polygon(col = 'Black',
fill = 'grey70',
data = fallowFieldsDataFrame,
aes(x = long, y = lat, group = group))


replacing the data frame (fallowFieldsDataFrame) with the shapefile (fallowFieldsWGS84) works, but it warps the Landsat image.



enter image description here



The cropped image and shapefile are in the same projection, but the shapefile seems to be warping the raster. Is there a way to plot the shapefile over the raster without warping it?



enter image description here



enter image description here



It doesn't get warped with plotRGB, but I was hoping to use ggRGB so that I could make a more elegant map with gglot2.



enter image description here



plotRGB(landsatAprilCropped, 
r = 3, g = 2, b = 1,
stretch = 'hist', axes = TRUE,
main = 'Fallow Fields Overlaid on Landsat Image: 4/20/2018')

plot(bardFallowFields, col = 'transparent', border = 'red', add = TRUE)









share|improve this question






























    2















    I am trying to use ggplot2 to map a polygon feature class over a raster brick (created from multiple Landsat band images). I'm able to map the polygons and the raster separately, but when I try to have them together (following the last code chunk at http://bleutner.github.io/RStoolbox/rstbx-docu/ggRGB.html RStudio crashes (even after restarting the computer).



    ggRGB attempt:



    fallowFields <- rgdal::readOGR(dsn = fgdb, layer = 'Fallowing2018')
    fallowFieldsWGS84 <- spTransform(fallowFields, crs(L8_20180420_brick))

    fallowFieldsDataFrame <- fallowFieldsWGS %>% fortify

    landsatAprilCropped <- raster::crop(L8_20180420_brick, raster::extent(fallowFields))

    p <- ggplot()
    p + ggRGB(img = landsatAprilCropped,
    r = 3,
    g = 2,
    b = 1,
    stretch = 'hist',
    ggLayer = TRUE) +
    geom_polygon(col = 'Black',
    fill = 'grey70',
    data = fallowFieldsDataFrame,
    aes(x = long, y = lat, group = group))


    replacing the data frame (fallowFieldsDataFrame) with the shapefile (fallowFieldsWGS84) works, but it warps the Landsat image.



    enter image description here



    The cropped image and shapefile are in the same projection, but the shapefile seems to be warping the raster. Is there a way to plot the shapefile over the raster without warping it?



    enter image description here



    enter image description here



    It doesn't get warped with plotRGB, but I was hoping to use ggRGB so that I could make a more elegant map with gglot2.



    enter image description here



    plotRGB(landsatAprilCropped, 
    r = 3, g = 2, b = 1,
    stretch = 'hist', axes = TRUE,
    main = 'Fallow Fields Overlaid on Landsat Image: 4/20/2018')

    plot(bardFallowFields, col = 'transparent', border = 'red', add = TRUE)









    share|improve this question


























      2












      2








      2








      I am trying to use ggplot2 to map a polygon feature class over a raster brick (created from multiple Landsat band images). I'm able to map the polygons and the raster separately, but when I try to have them together (following the last code chunk at http://bleutner.github.io/RStoolbox/rstbx-docu/ggRGB.html RStudio crashes (even after restarting the computer).



      ggRGB attempt:



      fallowFields <- rgdal::readOGR(dsn = fgdb, layer = 'Fallowing2018')
      fallowFieldsWGS84 <- spTransform(fallowFields, crs(L8_20180420_brick))

      fallowFieldsDataFrame <- fallowFieldsWGS %>% fortify

      landsatAprilCropped <- raster::crop(L8_20180420_brick, raster::extent(fallowFields))

      p <- ggplot()
      p + ggRGB(img = landsatAprilCropped,
      r = 3,
      g = 2,
      b = 1,
      stretch = 'hist',
      ggLayer = TRUE) +
      geom_polygon(col = 'Black',
      fill = 'grey70',
      data = fallowFieldsDataFrame,
      aes(x = long, y = lat, group = group))


      replacing the data frame (fallowFieldsDataFrame) with the shapefile (fallowFieldsWGS84) works, but it warps the Landsat image.



      enter image description here



      The cropped image and shapefile are in the same projection, but the shapefile seems to be warping the raster. Is there a way to plot the shapefile over the raster without warping it?



      enter image description here



      enter image description here



      It doesn't get warped with plotRGB, but I was hoping to use ggRGB so that I could make a more elegant map with gglot2.



      enter image description here



      plotRGB(landsatAprilCropped, 
      r = 3, g = 2, b = 1,
      stretch = 'hist', axes = TRUE,
      main = 'Fallow Fields Overlaid on Landsat Image: 4/20/2018')

      plot(bardFallowFields, col = 'transparent', border = 'red', add = TRUE)









      share|improve this question
















      I am trying to use ggplot2 to map a polygon feature class over a raster brick (created from multiple Landsat band images). I'm able to map the polygons and the raster separately, but when I try to have them together (following the last code chunk at http://bleutner.github.io/RStoolbox/rstbx-docu/ggRGB.html RStudio crashes (even after restarting the computer).



      ggRGB attempt:



      fallowFields <- rgdal::readOGR(dsn = fgdb, layer = 'Fallowing2018')
      fallowFieldsWGS84 <- spTransform(fallowFields, crs(L8_20180420_brick))

      fallowFieldsDataFrame <- fallowFieldsWGS %>% fortify

      landsatAprilCropped <- raster::crop(L8_20180420_brick, raster::extent(fallowFields))

      p <- ggplot()
      p + ggRGB(img = landsatAprilCropped,
      r = 3,
      g = 2,
      b = 1,
      stretch = 'hist',
      ggLayer = TRUE) +
      geom_polygon(col = 'Black',
      fill = 'grey70',
      data = fallowFieldsDataFrame,
      aes(x = long, y = lat, group = group))


      replacing the data frame (fallowFieldsDataFrame) with the shapefile (fallowFieldsWGS84) works, but it warps the Landsat image.



      enter image description here



      The cropped image and shapefile are in the same projection, but the shapefile seems to be warping the raster. Is there a way to plot the shapefile over the raster without warping it?



      enter image description here



      enter image description here



      It doesn't get warped with plotRGB, but I was hoping to use ggRGB so that I could make a more elegant map with gglot2.



      enter image description here



      plotRGB(landsatAprilCropped, 
      r = 3, g = 2, b = 1,
      stretch = 'hist', axes = TRUE,
      main = 'Fallow Fields Overlaid on Landsat Image: 4/20/2018')

      plot(bardFallowFields, col = 'transparent', border = 'red', add = TRUE)






      raster coordinate-system r ggplot2






      share|improve this question















      share|improve this question













      share|improve this question




      share|improve this question








      edited Aug 27 '18 at 22:02







      Iracambi

















      asked Aug 27 '18 at 21:50









      IracambiIracambi

      13610




      13610




















          1 Answer
          1






          active

          oldest

          votes


















          1














          You miss a very important part. First, an example:



          library(raster)
          library(ggplot2)
          library(RStoolbox)

          data(lsat)

          lsat

          poly <- as(extent(622999,625000,-417000,-415000),'SpatialPolygons')

          poly <- fortify(poly)

          names(poly)[1:2] <- c('x','y')

          e <- extent(lsat)


          p <- ggplot() + ggRGB(img = lsat,
          r = 3,
          g = 2,
          b = 1,
          stretch = 'hist',
          ggLayer = T) +
          xlim(e[1:2]) + ylim(e[3:4]) +
          geom_polygon(aes(x,y), alpha = 0.9, data = poly)


          Using ggRBG() output is:



          ggRGB(img = lsat,
          r = 3,
          g = 2,
          b = 1,
          stretch = 'hist')


          enter image description here



          With your procedure I reproduced the same issue:



          p


          enter image description here



          The solution is to add coord_equal()



          p + coord_equal()


          enter image description here



          I recomend you to add ylim() and xlim() with the extent of raster object






          share|improve this answer























            Your Answer








            StackExchange.ready(function()
            var channelOptions =
            tags: "".split(" "),
            id: "79"
            ;
            initTagRenderer("".split(" "), "".split(" "), channelOptions);

            StackExchange.using("externalEditor", function()
            // Have to fire editor after snippets, if snippets enabled
            if (StackExchange.settings.snippets.snippetsEnabled)
            StackExchange.using("snippets", function()
            createEditor();
            );

            else
            createEditor();

            );

            function createEditor()
            StackExchange.prepareEditor(
            heartbeatType: 'answer',
            autoActivateHeartbeat: false,
            convertImagesToLinks: false,
            noModals: true,
            showLowRepImageUploadWarning: true,
            reputationToPostImages: null,
            bindNavPrevention: true,
            postfix: "",
            imageUploader:
            brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
            contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
            allowUrls: true
            ,
            onDemand: true,
            discardSelector: ".discard-answer"
            ,immediatelyShowMarkdownHelp:true
            );



            );













            draft saved

            draft discarded


















            StackExchange.ready(
            function ()
            StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fgis.stackexchange.com%2fquestions%2f294151%2foverlay-shapefile-on-multiband-raster-using-ggrgb-and-ggplot2-in-r%23new-answer', 'question_page');

            );

            Post as a guest















            Required, but never shown

























            1 Answer
            1






            active

            oldest

            votes








            1 Answer
            1






            active

            oldest

            votes









            active

            oldest

            votes






            active

            oldest

            votes









            1














            You miss a very important part. First, an example:



            library(raster)
            library(ggplot2)
            library(RStoolbox)

            data(lsat)

            lsat

            poly <- as(extent(622999,625000,-417000,-415000),'SpatialPolygons')

            poly <- fortify(poly)

            names(poly)[1:2] <- c('x','y')

            e <- extent(lsat)


            p <- ggplot() + ggRGB(img = lsat,
            r = 3,
            g = 2,
            b = 1,
            stretch = 'hist',
            ggLayer = T) +
            xlim(e[1:2]) + ylim(e[3:4]) +
            geom_polygon(aes(x,y), alpha = 0.9, data = poly)


            Using ggRBG() output is:



            ggRGB(img = lsat,
            r = 3,
            g = 2,
            b = 1,
            stretch = 'hist')


            enter image description here



            With your procedure I reproduced the same issue:



            p


            enter image description here



            The solution is to add coord_equal()



            p + coord_equal()


            enter image description here



            I recomend you to add ylim() and xlim() with the extent of raster object






            share|improve this answer



























              1














              You miss a very important part. First, an example:



              library(raster)
              library(ggplot2)
              library(RStoolbox)

              data(lsat)

              lsat

              poly <- as(extent(622999,625000,-417000,-415000),'SpatialPolygons')

              poly <- fortify(poly)

              names(poly)[1:2] <- c('x','y')

              e <- extent(lsat)


              p <- ggplot() + ggRGB(img = lsat,
              r = 3,
              g = 2,
              b = 1,
              stretch = 'hist',
              ggLayer = T) +
              xlim(e[1:2]) + ylim(e[3:4]) +
              geom_polygon(aes(x,y), alpha = 0.9, data = poly)


              Using ggRBG() output is:



              ggRGB(img = lsat,
              r = 3,
              g = 2,
              b = 1,
              stretch = 'hist')


              enter image description here



              With your procedure I reproduced the same issue:



              p


              enter image description here



              The solution is to add coord_equal()



              p + coord_equal()


              enter image description here



              I recomend you to add ylim() and xlim() with the extent of raster object






              share|improve this answer

























                1












                1








                1







                You miss a very important part. First, an example:



                library(raster)
                library(ggplot2)
                library(RStoolbox)

                data(lsat)

                lsat

                poly <- as(extent(622999,625000,-417000,-415000),'SpatialPolygons')

                poly <- fortify(poly)

                names(poly)[1:2] <- c('x','y')

                e <- extent(lsat)


                p <- ggplot() + ggRGB(img = lsat,
                r = 3,
                g = 2,
                b = 1,
                stretch = 'hist',
                ggLayer = T) +
                xlim(e[1:2]) + ylim(e[3:4]) +
                geom_polygon(aes(x,y), alpha = 0.9, data = poly)


                Using ggRBG() output is:



                ggRGB(img = lsat,
                r = 3,
                g = 2,
                b = 1,
                stretch = 'hist')


                enter image description here



                With your procedure I reproduced the same issue:



                p


                enter image description here



                The solution is to add coord_equal()



                p + coord_equal()


                enter image description here



                I recomend you to add ylim() and xlim() with the extent of raster object






                share|improve this answer













                You miss a very important part. First, an example:



                library(raster)
                library(ggplot2)
                library(RStoolbox)

                data(lsat)

                lsat

                poly <- as(extent(622999,625000,-417000,-415000),'SpatialPolygons')

                poly <- fortify(poly)

                names(poly)[1:2] <- c('x','y')

                e <- extent(lsat)


                p <- ggplot() + ggRGB(img = lsat,
                r = 3,
                g = 2,
                b = 1,
                stretch = 'hist',
                ggLayer = T) +
                xlim(e[1:2]) + ylim(e[3:4]) +
                geom_polygon(aes(x,y), alpha = 0.9, data = poly)


                Using ggRBG() output is:



                ggRGB(img = lsat,
                r = 3,
                g = 2,
                b = 1,
                stretch = 'hist')


                enter image description here



                With your procedure I reproduced the same issue:



                p


                enter image description here



                The solution is to add coord_equal()



                p + coord_equal()


                enter image description here



                I recomend you to add ylim() and xlim() with the extent of raster object







                share|improve this answer












                share|improve this answer



                share|improve this answer










                answered Aug 30 '18 at 12:00









                aldo_tapiaaldo_tapia

                7,94951742




                7,94951742



























                    draft saved

                    draft discarded
















































                    Thanks for contributing an answer to Geographic Information Systems Stack Exchange!


                    • Please be sure to answer the question. Provide details and share your research!

                    But avoid


                    • Asking for help, clarification, or responding to other answers.

                    • Making statements based on opinion; back them up with references or personal experience.

                    To learn more, see our tips on writing great answers.




                    draft saved


                    draft discarded














                    StackExchange.ready(
                    function ()
                    StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fgis.stackexchange.com%2fquestions%2f294151%2foverlay-shapefile-on-multiband-raster-using-ggrgb-and-ggplot2-in-r%23new-answer', 'question_page');

                    );

                    Post as a guest















                    Required, but never shown





















































                    Required, but never shown














                    Required, but never shown












                    Required, but never shown







                    Required, but never shown

































                    Required, but never shown














                    Required, but never shown












                    Required, but never shown







                    Required, but never shown







                    Popular posts from this blog

                    រឿង រ៉ូមេអូ និង ហ្ស៊ុយលីយេ សង្ខេបរឿង តួអង្គ បញ្ជីណែនាំ

                    Crop image to path created in TikZ? Announcing the arrival of Valued Associate #679: Cesar Manara Planned maintenance scheduled April 17/18, 2019 at 00:00UTC (8:00pm US/Eastern)Crop an inserted image?TikZ pictures does not appear in posterImage behind and beyond crop marks?Tikz picture as large as possible on A4 PageTransparency vs image compression dilemmaHow to crop background from image automatically?Image does not cropTikzexternal capturing crop marks when externalizing pgfplots?How to include image path that contains a dollar signCrop image with left size given

                    Romeo and Juliet ContentsCharactersSynopsisSourcesDate and textThemes and motifsCriticism and interpretationLegacyScene by sceneSee alsoNotes and referencesSourcesExternal linksNavigation menu"Consumer Price Index (estimate) 1800–"10.2307/28710160037-3222287101610.1093/res/II.5.31910.2307/45967845967810.2307/2869925286992510.1525/jams.1982.35.3.03a00050"Dada Masilo: South African dancer who breaks the rules"10.1093/res/os-XV.57.1610.2307/28680942868094"Sweet Sorrow: Mann-Korman's Romeo and Juliet Closes Sept. 5 at MN's Ordway"the original10.2307/45957745957710.1017/CCOL0521570476.009"Ram Leela box office collections hit massive Rs 100 crore, pulverises prediction"Archived"Broadway Revival of Romeo and Juliet, Starring Orlando Bloom and Condola Rashad, Will Close Dec. 8"Archived10.1075/jhp.7.1.04hon"Wherefore art thou, Romeo? To make us laugh at Navy Pier"the original10.1093/gmo/9781561592630.article.O006772"Ram-leela Review Roundup: Critics Hail Film as Best Adaptation of Romeo and Juliet"Archived10.2307/31946310047-77293194631"Romeo and Juliet get Twitter treatment""Juliet's Nurse by Lois Leveen""Romeo and Juliet: Orlando Bloom's Broadway Debut Released in Theaters for Valentine's Day"Archived"Romeo and Juliet Has No Balcony"10.1093/gmo/9781561592630.article.O00778110.2307/2867423286742310.1076/enst.82.2.115.959510.1080/00138380601042675"A plague o' both your houses: error in GCSE exam paper forces apology""Juliet of the Five O'Clock Shadow, and Other Wonders"10.2307/33912430027-4321339124310.2307/28487440038-7134284874410.2307/29123140149-661129123144728341M"Weekender Guide: Shakespeare on The Drive""balcony"UK public library membership"romeo"UK public library membership10.1017/CCOL9780521844291"Post-Zionist Critique on Israel and the Palestinians Part III: Popular Culture"10.2307/25379071533-86140377-919X2537907"Capulets and Montagues: UK exam board admit mixing names up in Romeo and Juliet paper"Istoria Novellamente Ritrovata di Due Nobili Amanti2027/mdp.390150822329610820-750X"GCSE exam error: Board accidentally rewrites Shakespeare"10.2307/29176390149-66112917639"Exam board apologises after error in English GCSE paper which confused characters in Shakespeare's Romeo and Juliet""From Mariotto and Ganozza to Romeo and Guilietta: Metamorphoses of a Renaissance Tale"10.2307/37323537323510.2307/2867455286745510.2307/28678912867891"10 Questions for Taylor Swift"10.2307/28680922868092"Haymarket Theatre""The Zeffirelli Way: Revealing Talk by Florentine Director""Michael Smuin: 1938-2007 / Prolific dance director had showy career"The Life and Art of Edwin BoothRomeo and JulietRomeo and JulietRomeo and JulietRomeo and JulietEasy Read Romeo and JulietRomeo and Julieteeecb12003684p(data)4099369-3n8211610759dbe00d-a9e2-41a3-b2c1-977dd692899302814385X313670221313670221