{"id":20757291,"url":"https://github.com/piebro/plotting-maps","last_synced_at":"2025-04-29T10:37:00.136Z","repository":{"id":211896902,"uuid":"730207100","full_name":"piebro/plotting-maps","owner":"piebro","description":"A tool to easily create OpenStreetMap SVG maps to plot them with a pen plotter.","archived":false,"fork":false,"pushed_at":"2023-12-11T17:04:50.000Z","size":5398,"stargazers_count":33,"open_issues_count":0,"forks_count":2,"subscribers_count":1,"default_branch":"main","last_synced_at":"2024-04-15T07:51:34.449Z","etag":null,"topics":["map","openstreetmap","openstreetmap-data","osm","pen-plotter","plotter-art","plotting"],"latest_commit_sha":null,"homepage":"https://piebro.github.io/plotting-maps","language":"HTML","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/piebro.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null}},"created_at":"2023-12-11T12:35:37.000Z","updated_at":"2024-04-11T23:11:09.000Z","dependencies_parsed_at":null,"dependency_job_id":"1afa501e-344a-4f55-9661-615c83d1309e","html_url":"https://github.com/piebro/plotting-maps","commit_stats":null,"previous_names":["piebro/plotting-maps"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/piebro%2Fplotting-maps","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/piebro%2Fplotting-maps/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/piebro%2Fplotting-maps/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/piebro%2Fplotting-maps/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/piebro","download_url":"https://codeload.github.com/piebro/plotting-maps/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":251484786,"owners_count":21596811,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["map","openstreetmap","openstreetmap-data","osm","pen-plotter","plotter-art","plotting"],"created_at":"2024-11-17T09:41:20.977Z","updated_at":"2025-04-29T10:37:00.114Z","avatar_url":"https://github.com/piebro.png","language":"HTML","readme":"# Plotting Maps\n\nThis is a tool to easily create OpenStreetMap SVG maps to plot them with a pen plotter. Check out the tool here: https://piebro.github.io/plotting-maps. There, you can upload OSM exports and render them as SVGs consisting only of lines, making it very pen plotter-friendly.\n\n## How to Use\n\n1. Use a **Desktop Browser** or enable desktop browsing on mobile.\n2. Go to https://www.openstreetmap.org.\n3. Navigate to a place of interest:\n   ![Screenshot of OpenStreetMap](images/map_1.png)\n4. Click on \"Export\" (only visible on desktop):\n   ![Screenshot of OpenStreetMap with an arrow pointing to the \"Export\" button](images/map_2_export.png)\n5. Select the area of interest:\n   ![Screenshot of OpenStreetMap with an arrow pointing to the \"Manually select a different area\" link](images/map_3_select_area.png)\n6. Download the data via the Overpass API (you can also use the export button, but the size of the export is more limited):\n   ![Screenshot of OpenStreetMap with an arrow pointing to the \"Overpass API\" link](images/map_4_overpass.png)\n7. Download the file and upload it to https://piebro.github.io/plotting-maps using the \"Upload OSM Export\" button.\n8. Set all options and align the map by dragging and zooming.\n9. Download the map using the \"Download Map\" button.\n\nAn alternative way to obtain OSM Map Extracts is to use a [public Overpass API instance](https://wiki.openstreetmap.org/wiki/Overpass_API#Public_Overpass_API_instances) and download an area with a query.\n\n## Plot the Map\n\nI use [vpype](https://github.com/abey79/vpype) and [axicli](https://axidraw.com/doc/cli_api/) to plot the map with my [AxiDraw Pen Plotter](https://shop.evilmadscientist.com/productsmenu/846).\n\nI use linemerge and linesort to make the plotting faster,\n```bash\nvpype read map.svg \\\n  linemerge --tolerance 1mm \\\n  linesort \\\n  write \\\n  --page-size 400x266mm \\\n  --center \\\n  plot.svg\n```\n\ncreate a preview to check the plotting time,\n```bash\naxicli plot.svg --model 2 -vg3 --speed_pendown 15 --report_time -o preview.svg\n```\n\nand finally, plot the map.\n```bash\naxicli plot.svg --model 2 --speed_pendown 15 \u0026\u0026 axicli -m align\n```\n\nPlotting a map on an A3 piece of paper.\n\n![Image of a plotter plotting a map](images/plotting_image.png)\n\nIf you want to plot the map on mulitple piece of papers, you can use the `map_to_grid.sh` script.\n\nA similar, cool project with a different UX and output is: https://github.com/anvaka/city-roads/ and another project to visualize maps in a custom way (also for plotters) is: https://github.com/marceloprates/prettymaps\n\n## Contributing\n\nContributions to this project are welcome. Feel free to report bugs, suggest ideas, or create merge requests.\n\n## Developing\n\nThe project uses [Prettier](https://prettier.io/playground/) for linting javascript with a `print-width` of 120, `tab-width` of 4, and using single quotes.\n\n## Website Statistics\n\nThere is lightweight tracking for the website using Plausible. Anyone interested can view these statistics at https://plausible.io/piebro.github.io%2Fplotting-maps. It's worth noting that these statistics might be an underestimate as many users, including myself, use AdBlockers.\n\n## License\n\nThis project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details. The Example map.osm file is licensed under [ODbL](https://www.openstreetmap.org/copyright)","funding_links":[],"categories":["Software"],"sub_categories":["Vector Creation"],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpiebro%2Fplotting-maps","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fpiebro%2Fplotting-maps","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpiebro%2Fplotting-maps/lists"}