Convert lists of coordinates to multiple lines based on ID at start of each block of coordinates 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?Creating a loop for Lines data (spatial data)Convert coordinates from readShapePoly in R to long-lat coordinatesClip multiple .las files data to polygon shapefile using FUSIONExtract all the polygon coordinates from a SpatialPolygonsDataframe?Add information from a raster nc-file to a polygon shapefileFilled Polygons using ggplot in R not workingsmooth (Lon, Lat, Value) data over shapefile / smoothed data on shapefileAny workaround to extract plain text data in ASCII from `netCDF` file in Rhdf to gtiff, reprojecting, cropping with a shapefile in batch using RUsing R to create a choropleth generated from lat/lon lists - with data generated internally

Problem when applying foreach loop

Complexity of many constant time steps with occasional logarithmic steps

Single author papers against my advisor's will?

What is the largest species of polychaete?

I'm having difficulty getting my players to do stuff in a sandbox campaign

Why don't the Weasley twins use magic outside of school if the Trace can only find the location of spells cast?

Need a suitable toxic chemical for a murder plot in my novel

Active filter with series inductor and resistor - do these exist?

What LEGO pieces have "real-world" functionality?

Can't figure this one out.. What is the missing box?

How to market an anarchic city as a tourism spot to people living in civilized areas?

Slither Like a Snake

The following signatures were invalid: EXPKEYSIG 1397BC53640DB551

Working around an AWS network ACL rule limit

Fishing simulator

Aligning matrix of nodes with grid

Who can trigger ship-wide alerts in Star Trek?

Two different pronunciation of "понял"

What's the point in a preamp?

Stars Make Stars

What do you call a plan that's an alternative plan in case your initial plan fails?

Limit for e and 1/e

Is there a documented rationale why the House Ways and Means chairman can demand tax info?

Why does tar appear to skip file contents when output file is /dev/null?



Convert lists of coordinates to multiple lines based on ID at start of each block of coordinates



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?Creating a loop for Lines data (spatial data)Convert coordinates from readShapePoly in R to long-lat coordinatesClip multiple .las files data to polygon shapefile using FUSIONExtract all the polygon coordinates from a SpatialPolygonsDataframe?Add information from a raster nc-file to a polygon shapefileFilled Polygons using ggplot in R not workingsmooth (Lon, Lat, Value) data over shapefile / smoothed data on shapefileAny workaround to extract plain text data in ASCII from `netCDF` file in Rhdf to gtiff, reprojecting, cropping with a shapefile in batch using RUsing R to create a choropleth generated from lat/lon lists - with data generated internally



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








1















I have a list of XY coordinates along multiple lines. The lines are separated by a single identifier at the start of each block of coordinates. How do I convert this to multiple lines linking the identifier to the lines in R so that I can output them as a shapefile? The problem is in parsing the data to link the ID with the subsequent coordinates.



The data is in the following format:



ID1
3285.48 -63.32
3285.14 -64.14
3284.67 -63.56
3285.00 -62.77
ID2
3299.84 -76.82
3299.25 -75.38
3299.96 -75.76
ID3
3299.76 -86.92
3299.77 -86.89
3299.76 -87.04
3299.76 -87.23
3299.74 -87.25
3299.68 -87.22
3299.68 -87.11










share|improve this question




























    1















    I have a list of XY coordinates along multiple lines. The lines are separated by a single identifier at the start of each block of coordinates. How do I convert this to multiple lines linking the identifier to the lines in R so that I can output them as a shapefile? The problem is in parsing the data to link the ID with the subsequent coordinates.



    The data is in the following format:



    ID1
    3285.48 -63.32
    3285.14 -64.14
    3284.67 -63.56
    3285.00 -62.77
    ID2
    3299.84 -76.82
    3299.25 -75.38
    3299.96 -75.76
    ID3
    3299.76 -86.92
    3299.77 -86.89
    3299.76 -87.04
    3299.76 -87.23
    3299.74 -87.25
    3299.68 -87.22
    3299.68 -87.11










    share|improve this question
























      1












      1








      1








      I have a list of XY coordinates along multiple lines. The lines are separated by a single identifier at the start of each block of coordinates. How do I convert this to multiple lines linking the identifier to the lines in R so that I can output them as a shapefile? The problem is in parsing the data to link the ID with the subsequent coordinates.



      The data is in the following format:



      ID1
      3285.48 -63.32
      3285.14 -64.14
      3284.67 -63.56
      3285.00 -62.77
      ID2
      3299.84 -76.82
      3299.25 -75.38
      3299.96 -75.76
      ID3
      3299.76 -86.92
      3299.77 -86.89
      3299.76 -87.04
      3299.76 -87.23
      3299.74 -87.25
      3299.68 -87.22
      3299.68 -87.11










      share|improve this question














      I have a list of XY coordinates along multiple lines. The lines are separated by a single identifier at the start of each block of coordinates. How do I convert this to multiple lines linking the identifier to the lines in R so that I can output them as a shapefile? The problem is in parsing the data to link the ID with the subsequent coordinates.



      The data is in the following format:



      ID1
      3285.48 -63.32
      3285.14 -64.14
      3284.67 -63.56
      3285.00 -62.77
      ID2
      3299.84 -76.82
      3299.25 -75.38
      3299.96 -75.76
      ID3
      3299.76 -86.92
      3299.77 -86.89
      3299.76 -87.04
      3299.76 -87.23
      3299.74 -87.25
      3299.68 -87.22
      3299.68 -87.11







      r command-line






      share|improve this question













      share|improve this question











      share|improve this question




      share|improve this question










      asked Apr 8 at 12:57









      xyzbluexyzblue

      89210




      89210




















          1 Answer
          1






          active

          oldest

          votes


















          1














          You can read in irregular data if you know the max number of columns by giving column names and a fill argument:



          > data = read.table("./lines.txt",col.names=c("x","y"),fill=TRUE, stringsAsFactors=FALSE)
          > data
          x y
          1 ID1 NA
          2 3285.48 -63.32
          3 3285.14 -64.14
          4 3284.67 -63.56
          5 3285.00 -62.77
          6 ID2 NA
          7 3299.84 -76.82
          8 3299.25 -75.38
          9 3299.96 -75.76
          10 ID3 NA


          Then the lines are grouped by how many NA are in the second column so far:



          > data$group = cumsum(is.na(data$y))
          > data
          x y group
          1 ID1 NA 1
          2 3285.48 -63.32 1
          3 3285.14 -64.14 1
          4 3284.67 -63.56 1
          5 3285.00 -62.77 1
          6 ID2 NA 2
          7 3299.84 -76.82 2
          8 3299.25 -75.38 2
          9 3299.96 -75.76 2
          10 ID3 NA 3


          Then you can pull out the IDS:



          > IDS = data$x[is.na(data$y)]
          > IDS
          [1] "ID1" "ID2" "ID3"


          And filter them out:



          > data = data[!is.na(data$y),]
          > data
          x y group
          2 3285.48 -63.32 1
          3 3285.14 -64.14 1
          4 3284.67 -63.56 1
          5 3285.00 -62.77 1
          7 3299.84 -76.82 2
          8 3299.25 -75.38 2
          9 3299.96 -75.76 2
          11 3299.76 -86.92 3


          Then split by group gives you a list of data frames you can apply work to:



          > par(ask=TRUE)
          > lapply(split(data,data$group), function(d)plot(d$x,d$y,type="l"))
          Hit <Return> to see next plot:
          Hit <Return> to see next plot:
          Hit <Return> to see next plot:


          Replace that function with whatever you want to do with each line data set, and attach the IDS extracted in the previous step as needed.



          Note at this point the columns might still be character so coercion to numeric might be helpful via as.numeric.



          If you want to make sf spatial lines data frame, then proceed:



          data$x = as.numeric(data$x)
          library(sf)
          lfc = do.call(st_sfc,
          lapply(split(data, data$group),
          function(d)st_linestring(as.matrix(d[,1:2]))))
          lfd = st_sf(data.frame(ID=IDS, geom=lfc))
          plot(lfd,lwd=5)


          to get...



          enter image description here






          share|improve this answer

























          • that fill part is sweet, really neat

            – mdsumner
            Apr 9 at 0:14











          • This is a great answer to the problem @Spacedman - do you think it would scale well with very large datasets (millions of lines)? I have tried to do something similar with the unix utility awk but like you I had to go through the data multiple times processing and writing to get a fairly simple additional column?

            – xyzblue
            Apr 9 at 14:23











          • Took about ten seconds to process a 1,000,000 line file that had 10,000 features each with 100 points in it, resulting in a spatial sf data frame with 10,000 features.

            – Spacedman
            Apr 9 at 15:29











          • Well that seems sufficiently fast! Thanks again @Spacedman

            – xyzblue
            Apr 9 at 20:10











          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%2f318117%2fconvert-lists-of-coordinates-to-multiple-lines-based-on-id-at-start-of-each-bloc%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 can read in irregular data if you know the max number of columns by giving column names and a fill argument:



          > data = read.table("./lines.txt",col.names=c("x","y"),fill=TRUE, stringsAsFactors=FALSE)
          > data
          x y
          1 ID1 NA
          2 3285.48 -63.32
          3 3285.14 -64.14
          4 3284.67 -63.56
          5 3285.00 -62.77
          6 ID2 NA
          7 3299.84 -76.82
          8 3299.25 -75.38
          9 3299.96 -75.76
          10 ID3 NA


          Then the lines are grouped by how many NA are in the second column so far:



          > data$group = cumsum(is.na(data$y))
          > data
          x y group
          1 ID1 NA 1
          2 3285.48 -63.32 1
          3 3285.14 -64.14 1
          4 3284.67 -63.56 1
          5 3285.00 -62.77 1
          6 ID2 NA 2
          7 3299.84 -76.82 2
          8 3299.25 -75.38 2
          9 3299.96 -75.76 2
          10 ID3 NA 3


          Then you can pull out the IDS:



          > IDS = data$x[is.na(data$y)]
          > IDS
          [1] "ID1" "ID2" "ID3"


          And filter them out:



          > data = data[!is.na(data$y),]
          > data
          x y group
          2 3285.48 -63.32 1
          3 3285.14 -64.14 1
          4 3284.67 -63.56 1
          5 3285.00 -62.77 1
          7 3299.84 -76.82 2
          8 3299.25 -75.38 2
          9 3299.96 -75.76 2
          11 3299.76 -86.92 3


          Then split by group gives you a list of data frames you can apply work to:



          > par(ask=TRUE)
          > lapply(split(data,data$group), function(d)plot(d$x,d$y,type="l"))
          Hit <Return> to see next plot:
          Hit <Return> to see next plot:
          Hit <Return> to see next plot:


          Replace that function with whatever you want to do with each line data set, and attach the IDS extracted in the previous step as needed.



          Note at this point the columns might still be character so coercion to numeric might be helpful via as.numeric.



          If you want to make sf spatial lines data frame, then proceed:



          data$x = as.numeric(data$x)
          library(sf)
          lfc = do.call(st_sfc,
          lapply(split(data, data$group),
          function(d)st_linestring(as.matrix(d[,1:2]))))
          lfd = st_sf(data.frame(ID=IDS, geom=lfc))
          plot(lfd,lwd=5)


          to get...



          enter image description here






          share|improve this answer

























          • that fill part is sweet, really neat

            – mdsumner
            Apr 9 at 0:14











          • This is a great answer to the problem @Spacedman - do you think it would scale well with very large datasets (millions of lines)? I have tried to do something similar with the unix utility awk but like you I had to go through the data multiple times processing and writing to get a fairly simple additional column?

            – xyzblue
            Apr 9 at 14:23











          • Took about ten seconds to process a 1,000,000 line file that had 10,000 features each with 100 points in it, resulting in a spatial sf data frame with 10,000 features.

            – Spacedman
            Apr 9 at 15:29











          • Well that seems sufficiently fast! Thanks again @Spacedman

            – xyzblue
            Apr 9 at 20:10















          1














          You can read in irregular data if you know the max number of columns by giving column names and a fill argument:



          > data = read.table("./lines.txt",col.names=c("x","y"),fill=TRUE, stringsAsFactors=FALSE)
          > data
          x y
          1 ID1 NA
          2 3285.48 -63.32
          3 3285.14 -64.14
          4 3284.67 -63.56
          5 3285.00 -62.77
          6 ID2 NA
          7 3299.84 -76.82
          8 3299.25 -75.38
          9 3299.96 -75.76
          10 ID3 NA


          Then the lines are grouped by how many NA are in the second column so far:



          > data$group = cumsum(is.na(data$y))
          > data
          x y group
          1 ID1 NA 1
          2 3285.48 -63.32 1
          3 3285.14 -64.14 1
          4 3284.67 -63.56 1
          5 3285.00 -62.77 1
          6 ID2 NA 2
          7 3299.84 -76.82 2
          8 3299.25 -75.38 2
          9 3299.96 -75.76 2
          10 ID3 NA 3


          Then you can pull out the IDS:



          > IDS = data$x[is.na(data$y)]
          > IDS
          [1] "ID1" "ID2" "ID3"


          And filter them out:



          > data = data[!is.na(data$y),]
          > data
          x y group
          2 3285.48 -63.32 1
          3 3285.14 -64.14 1
          4 3284.67 -63.56 1
          5 3285.00 -62.77 1
          7 3299.84 -76.82 2
          8 3299.25 -75.38 2
          9 3299.96 -75.76 2
          11 3299.76 -86.92 3


          Then split by group gives you a list of data frames you can apply work to:



          > par(ask=TRUE)
          > lapply(split(data,data$group), function(d)plot(d$x,d$y,type="l"))
          Hit <Return> to see next plot:
          Hit <Return> to see next plot:
          Hit <Return> to see next plot:


          Replace that function with whatever you want to do with each line data set, and attach the IDS extracted in the previous step as needed.



          Note at this point the columns might still be character so coercion to numeric might be helpful via as.numeric.



          If you want to make sf spatial lines data frame, then proceed:



          data$x = as.numeric(data$x)
          library(sf)
          lfc = do.call(st_sfc,
          lapply(split(data, data$group),
          function(d)st_linestring(as.matrix(d[,1:2]))))
          lfd = st_sf(data.frame(ID=IDS, geom=lfc))
          plot(lfd,lwd=5)


          to get...



          enter image description here






          share|improve this answer

























          • that fill part is sweet, really neat

            – mdsumner
            Apr 9 at 0:14











          • This is a great answer to the problem @Spacedman - do you think it would scale well with very large datasets (millions of lines)? I have tried to do something similar with the unix utility awk but like you I had to go through the data multiple times processing and writing to get a fairly simple additional column?

            – xyzblue
            Apr 9 at 14:23











          • Took about ten seconds to process a 1,000,000 line file that had 10,000 features each with 100 points in it, resulting in a spatial sf data frame with 10,000 features.

            – Spacedman
            Apr 9 at 15:29











          • Well that seems sufficiently fast! Thanks again @Spacedman

            – xyzblue
            Apr 9 at 20:10













          1












          1








          1







          You can read in irregular data if you know the max number of columns by giving column names and a fill argument:



          > data = read.table("./lines.txt",col.names=c("x","y"),fill=TRUE, stringsAsFactors=FALSE)
          > data
          x y
          1 ID1 NA
          2 3285.48 -63.32
          3 3285.14 -64.14
          4 3284.67 -63.56
          5 3285.00 -62.77
          6 ID2 NA
          7 3299.84 -76.82
          8 3299.25 -75.38
          9 3299.96 -75.76
          10 ID3 NA


          Then the lines are grouped by how many NA are in the second column so far:



          > data$group = cumsum(is.na(data$y))
          > data
          x y group
          1 ID1 NA 1
          2 3285.48 -63.32 1
          3 3285.14 -64.14 1
          4 3284.67 -63.56 1
          5 3285.00 -62.77 1
          6 ID2 NA 2
          7 3299.84 -76.82 2
          8 3299.25 -75.38 2
          9 3299.96 -75.76 2
          10 ID3 NA 3


          Then you can pull out the IDS:



          > IDS = data$x[is.na(data$y)]
          > IDS
          [1] "ID1" "ID2" "ID3"


          And filter them out:



          > data = data[!is.na(data$y),]
          > data
          x y group
          2 3285.48 -63.32 1
          3 3285.14 -64.14 1
          4 3284.67 -63.56 1
          5 3285.00 -62.77 1
          7 3299.84 -76.82 2
          8 3299.25 -75.38 2
          9 3299.96 -75.76 2
          11 3299.76 -86.92 3


          Then split by group gives you a list of data frames you can apply work to:



          > par(ask=TRUE)
          > lapply(split(data,data$group), function(d)plot(d$x,d$y,type="l"))
          Hit <Return> to see next plot:
          Hit <Return> to see next plot:
          Hit <Return> to see next plot:


          Replace that function with whatever you want to do with each line data set, and attach the IDS extracted in the previous step as needed.



          Note at this point the columns might still be character so coercion to numeric might be helpful via as.numeric.



          If you want to make sf spatial lines data frame, then proceed:



          data$x = as.numeric(data$x)
          library(sf)
          lfc = do.call(st_sfc,
          lapply(split(data, data$group),
          function(d)st_linestring(as.matrix(d[,1:2]))))
          lfd = st_sf(data.frame(ID=IDS, geom=lfc))
          plot(lfd,lwd=5)


          to get...



          enter image description here






          share|improve this answer















          You can read in irregular data if you know the max number of columns by giving column names and a fill argument:



          > data = read.table("./lines.txt",col.names=c("x","y"),fill=TRUE, stringsAsFactors=FALSE)
          > data
          x y
          1 ID1 NA
          2 3285.48 -63.32
          3 3285.14 -64.14
          4 3284.67 -63.56
          5 3285.00 -62.77
          6 ID2 NA
          7 3299.84 -76.82
          8 3299.25 -75.38
          9 3299.96 -75.76
          10 ID3 NA


          Then the lines are grouped by how many NA are in the second column so far:



          > data$group = cumsum(is.na(data$y))
          > data
          x y group
          1 ID1 NA 1
          2 3285.48 -63.32 1
          3 3285.14 -64.14 1
          4 3284.67 -63.56 1
          5 3285.00 -62.77 1
          6 ID2 NA 2
          7 3299.84 -76.82 2
          8 3299.25 -75.38 2
          9 3299.96 -75.76 2
          10 ID3 NA 3


          Then you can pull out the IDS:



          > IDS = data$x[is.na(data$y)]
          > IDS
          [1] "ID1" "ID2" "ID3"


          And filter them out:



          > data = data[!is.na(data$y),]
          > data
          x y group
          2 3285.48 -63.32 1
          3 3285.14 -64.14 1
          4 3284.67 -63.56 1
          5 3285.00 -62.77 1
          7 3299.84 -76.82 2
          8 3299.25 -75.38 2
          9 3299.96 -75.76 2
          11 3299.76 -86.92 3


          Then split by group gives you a list of data frames you can apply work to:



          > par(ask=TRUE)
          > lapply(split(data,data$group), function(d)plot(d$x,d$y,type="l"))
          Hit <Return> to see next plot:
          Hit <Return> to see next plot:
          Hit <Return> to see next plot:


          Replace that function with whatever you want to do with each line data set, and attach the IDS extracted in the previous step as needed.



          Note at this point the columns might still be character so coercion to numeric might be helpful via as.numeric.



          If you want to make sf spatial lines data frame, then proceed:



          data$x = as.numeric(data$x)
          library(sf)
          lfc = do.call(st_sfc,
          lapply(split(data, data$group),
          function(d)st_linestring(as.matrix(d[,1:2]))))
          lfd = st_sf(data.frame(ID=IDS, geom=lfc))
          plot(lfd,lwd=5)


          to get...



          enter image description here







          share|improve this answer














          share|improve this answer



          share|improve this answer








          edited Apr 8 at 13:23

























          answered Apr 8 at 13:14









          SpacedmanSpacedman

          25k23551




          25k23551












          • that fill part is sweet, really neat

            – mdsumner
            Apr 9 at 0:14











          • This is a great answer to the problem @Spacedman - do you think it would scale well with very large datasets (millions of lines)? I have tried to do something similar with the unix utility awk but like you I had to go through the data multiple times processing and writing to get a fairly simple additional column?

            – xyzblue
            Apr 9 at 14:23











          • Took about ten seconds to process a 1,000,000 line file that had 10,000 features each with 100 points in it, resulting in a spatial sf data frame with 10,000 features.

            – Spacedman
            Apr 9 at 15:29











          • Well that seems sufficiently fast! Thanks again @Spacedman

            – xyzblue
            Apr 9 at 20:10

















          • that fill part is sweet, really neat

            – mdsumner
            Apr 9 at 0:14











          • This is a great answer to the problem @Spacedman - do you think it would scale well with very large datasets (millions of lines)? I have tried to do something similar with the unix utility awk but like you I had to go through the data multiple times processing and writing to get a fairly simple additional column?

            – xyzblue
            Apr 9 at 14:23











          • Took about ten seconds to process a 1,000,000 line file that had 10,000 features each with 100 points in it, resulting in a spatial sf data frame with 10,000 features.

            – Spacedman
            Apr 9 at 15:29











          • Well that seems sufficiently fast! Thanks again @Spacedman

            – xyzblue
            Apr 9 at 20:10
















          that fill part is sweet, really neat

          – mdsumner
          Apr 9 at 0:14





          that fill part is sweet, really neat

          – mdsumner
          Apr 9 at 0:14













          This is a great answer to the problem @Spacedman - do you think it would scale well with very large datasets (millions of lines)? I have tried to do something similar with the unix utility awk but like you I had to go through the data multiple times processing and writing to get a fairly simple additional column?

          – xyzblue
          Apr 9 at 14:23





          This is a great answer to the problem @Spacedman - do you think it would scale well with very large datasets (millions of lines)? I have tried to do something similar with the unix utility awk but like you I had to go through the data multiple times processing and writing to get a fairly simple additional column?

          – xyzblue
          Apr 9 at 14:23













          Took about ten seconds to process a 1,000,000 line file that had 10,000 features each with 100 points in it, resulting in a spatial sf data frame with 10,000 features.

          – Spacedman
          Apr 9 at 15:29





          Took about ten seconds to process a 1,000,000 line file that had 10,000 features each with 100 points in it, resulting in a spatial sf data frame with 10,000 features.

          – Spacedman
          Apr 9 at 15:29













          Well that seems sufficiently fast! Thanks again @Spacedman

          – xyzblue
          Apr 9 at 20:10





          Well that seems sufficiently fast! Thanks again @Spacedman

          – xyzblue
          Apr 9 at 20:10

















          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%2f318117%2fconvert-lists-of-coordinates-to-multiple-lines-based-on-id-at-start-of-each-bloc%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

          QGIS export composer to PDF scale the map [closed] Planned maintenance scheduled April 23, 2019 at 23:30 UTC (7:30pm US/Eastern) Announcing the arrival of Valued Associate #679: Cesar Manara Unicorn Meta Zoo #1: Why another podcast?Print Composer QGIS 2.6, how to export image?QGIS 2.8.1 print composer won't export all OpenCycleMap base layer tilesSave Print/Map QGIS composer view as PNG/PDF using Python (without changing anything in visible layout)?Export QGIS Print Composer PDF with searchable text labelsQGIS Print Composer does not change from landscape to portrait orientation?How can I avoid map size and scale changes in print composer?Fuzzy PDF export in QGIS running on macSierra OSExport the legend into its 100% size using Print ComposerScale-dependent rendering in QGIS PDF output