Hlavní navigace

Které mapy jsou pro váš web nejlepší?

29. 1. 2007
Doba čtení: 8 minut

Sdílet

 Autor: 29
Webové mapy na adresách Mapy.cz, Amapy.cz či maps.google.com zná snad každý, kdo alespoň trochu používá Internet. Počáteční nadšení, že můžeme své obydlí vidět ze satelitních snímů, se již vytratilo, avšak stále se na svůj oblíbený mapový server vracíme. Webové mapy zkrátka plní svůj účel a jejich provozovatelé vám přináší další lahůdku - možnost umístění map přímo na váš web.

Jako první z výše uvedených hráčů přišel s myšlenkou vypustit mezi veřejnost svoje mapy Google. Google API, jednoduše řečeno JavaScriptové (JS) rozhraní pro zobrazení a ovládání map, bylo spuštěno již před cca dvěma lety. V nedávné době pak vypustil API také Seznam a v době psaní tohoto článku čeká na startu API od zbrusu nových Amap od Atlasu. V tomto článku porovnáme jednotlivá API, závěrečné shrnutí pak dobře poslouží těm, kdo zvažují využití map na svém serveru.

Technické pozadí

Ačkoliv je kopírování některých služeb Google domácími hráči občas kritizováno, v tomto případě bude názor jistě opačný. Oba české servery se totiž inspirovaly nejen v architektuře samotného API (alespoň navenek), ale také v názvu většiny metod. Směrem k vývojářům je to určitě krok vpřed, protože jim tím ušetří nejen spoustu času, ale i mozkových buněk v případě přechodu od jednoho systému k druhému. U jednodušších aplikací se tak bude jednat o záležitost několika minut a mapový systém je vyměněn.

Umístit základní mapku na svůj vlastní web není vůbec složité. Co je k tomu potřeba?

  1. vygenerovat klíč na domovské stránce API (odkazy jsou uvedeny v tabulce níže),
  2. umístit základní JS kód na své stránky.

Uvnitř skriptu pouze nadefinujete, na jaký element na stránce se mají mapy „pověsit“, a je hotovo. Velikost mapy určujete jednoduše pomocí nastavení CSS parametrů daného elementu, proto je velmi jednoduché mapu zakomponovat do stránky, aniž by rozhodila samotný vzhled webu.

Co všechno mapy dokáží?

Základní funkce

Základní funkčnost map je velmi podobná, každý z mapových systémů ve zkratce umožňuje :

  • možnost přibližování a vzdalování se, neomezený pohyb po mapě s možností nastavení startovacího bodu,
  • umisťování značek, vytváření vizitek,
  • přepočet souřadnic mezi různými systémy.

Mapy.cz

Funkčnost mapového řešení od Seznamu se v tuto chvíli zdá ze všech zmíněných nejslabší. Funkce i licenční podmínky profilují v tuto chvíli toto API jako náhradu za statický obrázek u kontaktů na vašem webu, neboť:

  • maximální počet zobrazení za den je 1000,
  • API je možno využívat pouze pro nekomerční účely.

Velkou výhodou jsou subjektivně nejlepší satelitní fotografie či detailní mapy měst a ulic ČR, zejména licenční politika a nedostatek funkcí však brání tvoření složitějších aplikací.

Amapy.cz

Mapové řešení od Atlasu je sice oficiálně spuštěno teprve touto dobou, nicméně dostal jsem možnost si jej vyzkoušet o trochu dříve. Nové API je subjektivně rychlejší a oproti Mapy.cz přináší zejména:

U Amap v tuto chvíli bohužel nejsou známy licenční podmínky – snad budou o něco méně tvrdé než v případě Seznamu. Díky možnosti vektorových tras jsou jejich možnosti trochu lepší a jednoduchá práce s obsahem popisků značek bude také určitě vítána. Stejně jako u Mapy.cz, i zde naleznete detailní satelitní snímky i mapové podklady ulic a měst ČR.

Google maps

Poslední, služebně nejstarší hráč, se s klidem může chlubit hned několika trumfy. Předně, u Google nenaleznete žádná licenční omezení, jejich API tedy můžete provozovat na libovolném webu s libovolným zaměřením (kromě erotiky apod.). Google Maps jsou narozdíl od domácích hráčů zaměřeny především globálně, což přináší svá pro, ale i proti. Na rozdíl od předchozích služeb zde máte k dispozici mapu celého světa (u předchozích „pouze“ Evropu), nicméně satelitní i vektorové podklady ČR jsou při porovnání s českými službami dosti slabé. Dle vyjádření Google se ale objem datových podkladů v loňském roce zečtyřnásobil a je jen otázkou času, než budou i data pro ČR na skvělé úrovni. Co tedy v tuto chvíli hovoří pro používání Google?

Komunita a dokumentace

Dokumentace ke Gmaps API je v tuto chvíli několikanásobně delší (nemyslím nepřehlednější) a na první pohled je vidět, kdo je králem v oblasti funkcí. Co nenaleznete přímo v dokumentaci, naleznete v přilehlých diskusních fórech.

Vektorové trasy

… jako v případě Amap. Náhled je k vidění zde.

Geocoding

Geocoding znamená proces zpětného přiřazení GPS souřadnic na základě dodaného fulltextového názvu města či ulice. Naši republiku sice Gmaps nemají zpracovanou se zaměřením každého č.p. jako domácí hráči, nicméně Google je jediný, kdo geocoding poskytuje (s omezením 50.000 požadav­ků/den). V praxi tak můžete poměrně jednoduše získat alespoň GPS souřadnice měst od cca 15.000 obyvatel výše (nezaručuji). Předpokládám však, že Google do budoucna i toto zlepší.

Vlastní mapy

Pokud máte vlastní datové podklady, jsou Google Maps ideálním nástrojem – poměrně jednoduchým způsobem můžete namísto standardních map od Google využít vlastní podklady, a nahradit tak například chybějící turistické trasy.

Exporty do Google Earth

Součástí API je také možnost exportování svých vlastních značek do aplikace Google Earth. Pro Google je tato funkce jistě zajímavý způsob rozšíření, pro váš web zase další způsob, jak přilákat nové návštěvníky z celého světa.

Partner pro velké projekty

Vývojáři větších projektů, kteří mapy nevyužívají pouze pro zobrazení vizitky webu, v tuto chvíli pravděpodobně sáhnou po Google Maps. V licenčních podmínkách je sice uvedeno, že služba může být kdykoliv zrušena, nicméně tato slůvka jsou použita u všech zmiňovaných služeb a pro Google jednoznačně hovoří několik stovek referenčních projektů a především pokročilá dokumentace. I s touto dokumentací se však připravte, že pro zobrazení několika tisíc bodů na své mapě budete muset umět nejen číst dokumentaci, ale také solidně ovládat JavaScript – API vám poskytne pouze prostředky pro ovládání mapy samotné, vytvoření zbytku aplikace je však již na vás.

Maximální počet značek

V případě větších projektů, kde je nutno zobrazit několik (desítek) tisíc značek na mapě, je nemožné všechny značky nahrát najednou tak, jak je to napsáno v manuálu – všechny značky na mapě totiž zaberou také kus paměti v klientském počítači, a to se projeví zásadním zpomalením práce se samotnou mapou. Například u Google Maps bylo donedávna nahrání více než 200 značek najednou téměř spolehlivou cestou, jak „zbourat“ libovolný internetový prohlížeč na průměrném počítači. Nutno však poznamenat, že s vydáním každé nové verze se tyto limity zvyšují.

Pokud však nechcete riskovat, že návštěvníky svého webu spíše odradíte od další návštěvy, doporučuji využít metodu založenou na Ajaxu, která je právě v dokumentaci Google Maps dobře popsána. Podstatou této metody je nahrávání pouze těch značek, které jsou právě viditelné v okně mapy, a při každém posunutí mapy se znovu nahrají pouze ty značky, které jsou třeba (realizováno právě za pomoci asynchronního načtení XML z vašeho serveru). I když do mapy chcete nahrát několik desítek tisíc značek, nahráváte vždy pouze jejich část a šetříte tak paměť klientské stanice i datový tok na serveru. Tento způsob nahrávání je dobře vidět například na serveru Turistik.cz.

Test rychlosti

Pro otestování rychlosti jsem použil jednoduchý skript, který do mapy načte určitý počet značek. Na reálných příkladech si tak můžete ověřit, co s vaším počítačem udělá načtení 100, 500 i více značek najednou, a jak se s tím poperou jednotlivá API. Sami si můžete vyzkoušet, co s vaším prohlížečem udělá hromadné načtení několika set značek. Již při 500 značkách je při pohybu po mapě znát určité zpomalení. Počet značek si můžete sami zkusit změnit v adrese prohlížeče, parametr NUM určuje výsledný počet. Načítat více než 1000 značek však nedoporučuji jedincům se slabším PC, čísla přes 1500 pak zahltí většinu běžných prohlížečů a ovládání map se stává nemožným…

Rychlost interaktivních map
Mapy.cz Amapy.cz Maps.Google.com
100 značek Zde
Zde Zde
500 značek Zde Zde Zde
800 značek Zde Zde Zde
1000 značek Zde Zde Zde

Poznámka: odkazy na příklady na Amapy.cz byly vytvořeny s testovacím účtem – pokud odkazy nefungují, není dosud API Atlasu veřejně přístupné.

Dle výše uvedených testů je, alespoň na mém PC, nejrychlejší API od Seznamu, následované Atlasem, a největším loudalem se stává Gmaps API. V případě vysokého počtu značek je především u Google znát, že pohyb po mapě je trhanější než v ostatních případech…

Srovnání

Závěrečné srovnání snad napoví každému, kdo chce nějaký mapový systém využít. Nejvíce však záleží na tom, pro jaké účely…

KL23 hlasovani

Srovnání interaktivních map
Mapy.cz Amapy.cz Maps.Google.com
Adresa API api.mapy.cz/ api.amapy.cz www.google.com/a­pis/maps
Rychlost načítání Vysoká Vysoká Střední
Detailnost fotomap v ČR Vysoká Vysoká Nízká
Mapové podklady Evropa Evropa Svět
Detailnost měst a ulic Vysoká Vysoká Nízká
Dokumentace Stručná Stručná Výborná, detailní
Podpora komunity Slabá Slabá Výborná
Licenční podmínky 1000 požadavků denně,
pouze nekomerční účely
Žádná omezení Žádná omezení
Vektorové trasy Ne Ano Ano
Geocoding Ne Ne Ano (50000 požadavků / den)
Vlastní mapy Ne Ne Ano

Závěrem

Je jasné, že se do budoucna bude obsah této tabulky značně měnit. Pro domácí hráče jasně hrají lepší datové podklady (zatím) a v případě zpřístupnění funkce geocoding také kompletně zmapovaná ČR do úrovně č.p. Vzhledem ke vstupu Google na český trh bude také zajímavé sledovat, jakým způsobem se zlepší jejich datové podklady a právě možnosti geocodingu, protože toto je jediná slabost Gmaps oproti konkurenci (v případě, že ostatní geocoding vůbec uvolní).

Hodně bude samozřejmě záležet na licenčních podmínkách, protože při současném omezení u např. Seznam API nepomohou jeho rozmachu ani nadstandardní funkce (žádné nejsou). Trochu přitažené za vlasy mi přijde omezení obou českých API na konkrétní skript, nikoliv na doménu jako u Google, což znemožňuje tvorbu aplikace s „hezkými adresami“, které jsou logicky brány jako jiné umístění, a je nesmyslné používat pro každý tvar adresy jiný klíč.

Přidáte si na svůj web mapu?

Byl pro vás článek přínosný?

Autor článku

Autor v současné době dokončuje UHK a mimo jiné má na starost vývoj webových aplikací pod značkou. Webprovas.
Upozorníme vás na články, které by vám neměly uniknout (maximálně 2x týdně).