Back to top

Importing data into Google Earth>

4 posts / 0 yeni cevap
Son gönderi
Unregistered anon_user kullanıcısının resmi
Importing data into Google Earth>

Is there a way to import all of the data points from the WSL into a layer for Google Earth? That would be very nice if it could be done. Any comments are appreciated.

Matt Danielson
Marquette, MI

WS Üyesi wsadmin kullanıcısının resmi
Lat/Long are now in "full member lists"
The latitude and longitude are now included in the CSV version of the "full member lists", which can be downloaded a full country at a time. Enjoy! -Randy
WS Üyesi WS Üyesi kullanıcısının resmi
lat/lon doesn't quite get us there

Google Earth doesn't read CSV or TSV files—it reads GPX and KML files

I discovered an app that will convert between various formats of geocoded data, GPSbabel. It comes with a lot of built-in formatters, but none for the Warm Showers csv format. I've been noodling around trying to convert the Warm Showers file to KML, so far without success.

It should be possible to update GPSbabel to read the WS format, for WS to emit a CSV in a form that GPSbabel can read, or for WS to emit a KML file directly.

There are some issues with the WS data, most notably, people enter phone numbers in different formats, or enter a number in one field and "same" in another. Also some problems making it play nice in a KML file: some data is important but there's no apparent way to represent it in KML, so multiple fields would need to be merged into a single "notes" field (I think).

WS Üyesi WS Üyesi kullanıcısının resmi
progress

I've come up with a basic GREP pattern that converts the TSV download to the body of a KML file:
Search pattern:
^(.*?)\t(.*?)\t(.*?)\t(.*?)\t(.*?)\t(.*?)\t(.*?)\t(.*?)\t(.*?)\t(.*?)\t(.*?)\t(.*?)\t(.*?)\t(.*?)\t(.*?)\t(.*?)\t(.*?)\t(.*?)\t(.*?)\t(.*?)\t(.*?)\t(.*?)\t(.*?)
Replace pattern:
<Placemark><name>\4</name>\r<Point><coordinates>\19,\18</coordinates></Point><description>\r<![CDATA[
<p><a href="\3">mail link</a>
<br />mobile tel: \7
<br />work tel: \8
<br />home tel: \9</p>
<p>advance notice requested: \10</p>
<p>Address:
<br />\12
<br />\13
<br />\14 \15 \16</p>
<p><a href="\21">Personal site</a></p>
]]>\r</description></Placemark>\r

After completing this, all ampersands need to be escaped, and the kml header/footer need to be added:
Header:
<?xml version="1.0" encoding="UTF-8"?>
<kml xmlns="http://www.opengis.net/kml/2.2">
<Document>
<name>Warm Showers locations for (whatever)</name>

Footer:
</Document></kml>

KML is case-sensitive.

I tried this out on the USA, and apart from the fact that there are some Canadians included in the USA data, it works. There are a lot of blanks in many descriptions that a more sophisticated GREP pattern could leave out. Note that the flavor of GREP I'm using (in BBEdit) allows me to avoid the "greedy match" problem by appending a ? to a pattern/