웹 매핑을 시작하는 방법?


83

직장에서 웹 맵 작업을 시작하여 일부 통계를 도시별로 매핑하고 싶습니다.

아이디어가 있지만 어디서부터 시작해야할지 확실하지 않습니다.

이를 수행하는 방법에 대한 단계별 지침을 제공하는 명확한 자료가 있습니까?

답변:


94

이 질문은 커뮤니티 위키 및 위키 잠김으로 변환되었습니다. 답변 목록을 찾는 질문의 예이므로 폐쇄되지 않도록하기 위해 인기가있는 것으로 보입니다. 특수한 경우로 취급해야하며이 사이트 또는 모든 Stack Exchange 사이트에서 권장되는 질문 유형으로 간주해서는 안되지만 더 많은 콘텐츠를 제공하려면이 답변을 편집하여 자유롭게 수행하십시오. .


맵 서버 구성 요소가 있거나없는 솔루션 중에서 선택할 수 있습니다. 서버 솔루션은 물론 더 많은 데이터와보다 정교한 응용 프로그램을 지원합니다.

QGIS 가 일회성 데이터 시각화 를 원한다는 것을 알고 있다면 QGIS 용 플러그인 인 QGIS2Leaf 또는 Export to OpenLayers 3 을 사용하여 레이어를 웹 맵으로 내보낼 수 있습니다. 업데이트 (톰 Chadwin의 의견에 따라) : qgis2leaf와 QGIS - OL3 지금에 통합되었습니다 qgis2web .

중도의 옵션은 QGIS 클라우드 , 호스팅 QGIS 서버 옵션 : 당신은 로컬 프로젝트를 준비하고 당신이 준비가 만든 뷰어에서 그것을 발견 할 것이다 웹에 게시합니다. 특정 데이터 크기까지 무료 계정이 있습니다. 따라서 문제가 있다면 자체 서버가 필요하지 않습니다.

자체 오픈 소스 서버 를 실행하려면 작년의 FOSS4G에서 지오 서버 소개 ( http://workshops.opengeo.org/geoserver-intro/)로 시작할 수 있습니다. 관련된 도구는 일반적으로 Geoserver, PostGIS 및 OpenLayers입니다. 시작 비용은 근무 시간과 호스팅 비용입니다.

사용 사례를 모르면 배포 시간을 예측하기가 어렵습니다.


7
qgis2leaf 및 OpenLayers 3으로 내보내기가 이제 qgis2web에 병합되었습니다.
Tom Chadwin

qgis2web에 대한 좋은 지적. : 나는 및 qgis2web와 웹지도를 구축하는 방법을 처음부터 GIS를 가르치는 비디오 코스의 저자 udemy.com/gis-for-everyone/?couponCode=stackgis1이
multigoodverse

왜 GIS를 통과해야합니까? 그는 데이터베이스에서 Leaflet으로 직접 갈 수있었습니다.
Fjellrev

@Fjellrev 어떻게? GeoJSON으로 추출 하시겠습니까? 나는 그것이 GIS를 사용하는 것보다 어렵다고 주장합니다.
Tom Chadwin

GeoGATE 링크 를 탐색 할 수 있으며 GeoGATE는 PostGIS & Geoserver와 함께 훌륭하며 사용자 친화적 인 제어판을 통해 데이터와 함께 구성 할 수있는 수백 가지의 기성 도구가 포함되어 있습니다
Hani Draidi

41

Penn State에는 Open Web Mapping 클래스가 있습니다. 웹 매핑의 작동 방식과 관련 기술을 충분히 가르쳐 줄 수 있습니다. 수업에 사용 된 도구는 전부는 아니지만 대부분 무료이므로 비용이 문제가되지 않습니다. TOC는 다음과 같습니다.

레슨 0 : 오리엔테이션

학습 1 : 웹 맵핑 열기 소개

학습 2 : 웹 맵 서버 (WMS)

학습 3 : 웹 기능 서버 (WFS)

학습 4 : XML (Extensible Markup Language)

학습 5 : 고급 웹 맵 서버

학습 6 : 지리학 적 마크 업 언어 (GML)

레슨 7 : WFS 재 방문

학습 8 : 웹 맵핑 애플리케이션 빌드

레슨 9 : Thin 사용자 정의 웹 맵핑 클라이언트 빌드

재미있게 보내세요 :)


40

Google Fusion Tables 는 매핑 및 공간 쿼리로 유망합니다.

장점 : 설정하기 쉽다.

단점 : 모든 데이터가 Google 서버에 있습니다 (좋은지 나쁜지)

http://sites.google.com/site/fusiontablestalks/stories

여기에 이미지 설명을 입력하십시오

참고 : 많은 미디어 / 뉴스 회사에서이를 사용하고 있습니다.-Guardian UK 신문 예 http://www.guardian.co.uk/environment/datablog/interactive/2011/mar/07/carbon-emissions-public-buildings-map

더 빠른 http://gmaps-samples.googlecode.com/svn/trunk/fusiontables/fusiontableslayer_builder.html 을 설정할 수 있는 깔끔한 퓨전 마법사 가 있습니다

예 : http://www.latimes.com/news/local/la-me-us-congress-census-map,0,4500533.htmlstory

최고 중 하나 : http://tinyurl.com/England-Deprivation-Mapped


1
구글 내지도 구글 퓨전 테이블의 구현을? MyMaps는 브라우저 기반이지만 Fusion Tables는 서버 기반 인 것과 비슷 합니다.
sabre23t

40

거기에는 너무 많은 옵션과 많은 훌륭한 답변이 있습니다. 아직 여기에 나열되지 않은 가장 좋아하는 두 가지 선택은 CartoDBMapBox 입니다. 이 두 가지 모두 웹 기반 호스팅 및 데이터 시각화 및 무료로 시작하는 가격으로 매우 멋진 도구를 제공합니다.

데이터 설정을 위해 데스크톱 소프트웨어를 사용하는 것이 좋습니다. ArcMap과 Quantum GIS는 모두 데스크탑 부품을위한 훌륭한 선택입니다.

MapBox의 강점은 정말 훌륭하고 사용하기 쉬운 템플릿 을 사용 하고 사용자 인터페이스 요소 를 사용할 준비가 된 아름다운 웹 맵을 만들고 있다는 것입니다 . MapBox에는 CSS와 매우 유사한 스타일링 인터페이스를 사용하는 TileMill (무료) 이라는 데스크탑 프로그램이 필요합니다 .

CartoDB의 강점은 SQL API를 통해 PostGIS 루트를 공개한다는 것 입니다.

이 둘은 단독으로 또는 다른 자바 스크립트 매핑 라이브러리 (예 : Leaflet , Google Maps , OpenLayers ) 와 함께 사용할 수 있습니다 .

어떤 플랫폼을 사용하여 웹 매핑을 시작하기로 결정했는지에 관계없이 일부 자바 스크립트를 배우면 가장 도움이 될 것입니다. Codecademy 는 시작하기 좋은 곳입니다 (또한 무료입니다!).



2
MapBox 및 CartoDB를 이해하는 핵심은 가격 책정 (맵 뷰, 데이터 양) 및 표시하는 데이터 양입니다. CartoDB를 사용하면 더 큰 규모의 데이터 세트를 쉽게 관리 할 수 ​​있으며 소규모 프로젝트에는 MapBox를 제안합니다. 리플렛은 JavaScript 매핑 라이브러리에서 가장 가볍고 배우기 쉽습니다.
Zach

37

또한 OpenLaeos , GeoServer, GeoExt & PostGIS의 스택 인 OpenGeo Suite 를 발표하는 컨퍼런스에 참석했습니다 . "Enterprise Edition"(지원되는 버전에 대해 유료) 또는 " Community Edition "(무료) 버전을 모두 제공합니다. (업데이트) OpenGeo Suite는 이제 Boundless Suite입니다.

회의에서 시연 된 또 다른 패키지 는 MapServer와 OpenLayers의 스택 인 GeoMoose 입니다.

OSGEO Live DVD를 다운로드하는 것이 좋습니다 . 테스트 할 때 머신에 많은 것을 설치하고 싶지 않은 경우 가상 머신 환경에서 실행할 수 있습니다. 웹 매핑 도구를 포함한 다양한 오픈 소스 GIS 소프트웨어 패키지가 사전 패키지로 제공됩니다.


29

편집하다

이 질문과 답변의 인기로 인해 지난 몇 개월 동안 공급자와 API가 변경되어이 게시물에 일부 내용을 편집하고 있습니다.


API 선택은 실제로 특정 기능을 사용하려는 경우 예산을 언급하지 않고 프로젝트의 범위와 목적과 관련이 있습니다. 다른 주요 경고는 웹 개발 경험과 선호하거나 관심이있는 언어입니다.

귀하의 질문에 대답하는 가장 좋은 방법은 유용한 API 목록을 제공하는 것입니다. 다음은 생각 나는 세 가지입니다. 이것들은 결코 그들 모두가 아닙니다!

ArcGIS

아피스:

장점 :

  • 웹 AppBuilder는 웹 개발에 정통한되지 않은 매우 간단한 웹지도 응용 프로그램을 만드는했다
  • 사용하기 쉬운 응용 프로그램 작성기 ( Flex , SilverlightJavaScript , 사용 중단 계획에 유의)
  • 광범위한 온라인 포럼 ( 많은 스택 교환 게시물 )
  • 많은 솔루션 없이 개발 작업에 조금 필요는 ArcGIS 스택 내에서 사용할 수있는,는 ArcGIS는 적시에 솔루션을 배포하기위한 좋은 선택이 될 수 있습니다.
  • 많은 솔루션을위한 GitHub 리포지토리

단점 :

  • 가격 (API 사용은 아니지만 자체 데이터를 게시하려면 ArcGIS Online 참조 )
  • 응용 프로그램 코드를 사용자 정의하는 것은 번거로울 수 있습니다

요약:

ArcGIS는 웹 GIS 제품을 위해 많은 것을 제공하고 있으며 그 과정에서 도움이되는 많은 자료를 보유하고 있습니다. 자신의 데이터를 게시하려고 할 때 발생할 수있는 잠재적 비용을 알고 있어야합니다.

구글

아피스:

  • 자바 스크립트
  • 모바일 (Android, iOS)

장점 :

  • 웹 매핑에서 가장 잘 알려진 이름
  • 광범위한 JavaScript API
  • 많은 온라인 샘플
  • 최근 구글은 출시 가격 및 계획 제공되는 서비스의 좋은 고장입니다,

단점 :

요약:

Google은 시장에서 강력한 이름과 매우 안정적인 온라인 서비스를 제공합니다. 사용법에 대한 정보를 이해하고 합법적 인 발가락을 밟지 마십시오. 새로운 가격 및 계획 페이지는 이와 관련하여 매우 유용합니다.

오픈 소스

API (모든 JavaScript 기반) :

장점 :

단점 :

  • 공식적인 지원은 잘 알려져 있지 않지만 관련 커뮤니티가 도움이되는 것 이상일 수도 있습니다 (아마도 상업적 GIS 지원보다 훨씬 우수함).

요약:

오픈 소스는 웹 GIS의 물을 테스트하려는 모든 사람들에게 진정으로 훌륭한 옵션입니다. 커뮤니티에서 매일 변경 및 개선 된 사항으로 인해 오픈 소스는 지리 공간 요구를 해결하는 저렴한 방법이 될 수 있습니다.


내가 말했듯이, 이것은 당신이 선택한 모든 것이 아니지만, 적어도 지금은 웹 GIS 세계의 주요 선수들과 친숙해질 수있는 자신과 다른 사람들을위한 링크가있는 게시물이 있습니다.


좋은 의견! 업데이트 하시겠습니까?
Fjellrev

@ Fjellrev-제안 사항이 있거나 게시물이 누락 된 것에 대한 지침을 제공 할 수 있다면 게시물을 업데이트 할 수 있습니다. 솔직히 말해서 지난 몇 년간 Esri 기술에 중점을 두어이 공간에서 발생한 많은 업데이트조차 알지 못했습니다. 궁극적으로, 나는 여전히 위의 내용이 우주의 타자에 대해 언급하고 각각에 대한 현재 정보에 대한 링크를 제공한다고 생각합니다. 다시 말하지만, 제안 사항이 있으면 테마에 맞는 한 기꺼이 추가 할 것입니다.
evv_gis

25

위의 질문에서 오픈 소스 답변을 얻은 것 같습니다. 회사에 예산이 있다면 ESRI는 매우 좋은 옵션이 될 수 있습니다. 명확히하기 위해 웹 매핑 API 자체는 자유롭게 사용할 수 있지만 백엔드 ArcGIS Server 및 SDE는 비용이 많이 듭니다. 또한 웹 매핑 응용 프로그램에서 사용할 맵 서비스를 만들려면 데스크톱 소프트웨어가 필요합니다. 이러한 리소스에 이미 액세스 할 수 있거나 구매할 수있는 경우 ESRI 솔루션을 확인하는 것이 좋습니다.

여기서 한 가지 장점은 다양한 언어로 코딩 할 수 있다는 것입니다. Flex 및 Silverlight 용 ESRI 특정 API가 있습니다.

Flex : http://help.arcgis.com/en/webapi/flex/index.html Silverlight : http://help.arcgis.com/en/webapi/silverlight/index.html

현재는 웹 프로그래밍의 추세가 플러그인을 필요로하고 공급 업체에 특화된 (위의) 솔루션에서 벗어나 더 많은 오픈 소스 및 표준 기반 프레임 워크로 이동하는 것처럼 보입니다. ESRI는이를 Javascript API로 다룹니다.

자바 스크립트 : http://help.arcgis.com/en/webapi/javascript/arcgis/

이 API 웹 사이트를 살펴보면 설명서가 매우 좋습니다. 또한 특정 문제에 대한 커뮤니티 도움말을위한 포럼이 있습니다. ESRI를 통한 기술 지원도 매우 좋습니다. 따라서 이러한 응용 프로그램이 있거나 예산이 있다면 가격과 리소스가 떨어집니다. 위의 오픈 소스 솔루션이 고려할 가치가 없다면 훌륭한 경로입니다.


4
이 답변이 게시 된 이후 Esri는 ArcGIS Online 을 출시 하여 온-프레미스 ArcGIS Server 및 SDE가 필요 없게되었습니다. 시작하는 데 사용할 수 있는 무료 개발자 계획이 있습니다
Stephen Lead

20

생존력 연구를 위해 보스를 보여주기 위해 무언가를 프로토 타입으로 만들고 싶다면 1 년 전에해야했던 것입니다. 백엔드의 경우 사용자 친화적 인 웹 인터페이스로 인해 Geoserver를 추천합니다. 간단한 shapefile. 프론트 엔드의 경우 OpenLayers는 웹 사이트에 많은 샘플이있는 환상적인 선택입니다. 나는 어떤 방법 으로든 웹 프로그래머가 아니지만 자바 스크립트 샘플을 복사 / 붙여 넣기 / 비틀기 바람을 발견했습니다. UbuntuGIS 리포지토리의 패키지를 사용하여이 모든 것을 VirtualBox VM에 넣어 한곳에 보관하고 일반 개발 환경을 중단하지 않았습니다.

생산을 위해서는 사용 사례에 따라 많은 것들이 있습니다. 필자는 결국 Geoserver만큼 부풀어 있지 않아 lighttpd 웹 서버에서 빠른 cgi 프로세스로 실행되기 때문에 결국 Mapserver를 사용했습니다. 우리는 Geoserver가 기본적으로 지원하는 WFS-T가 필요했지만 Mapserver는 지원하지 않았으므로 더 작은 값을 사용했습니다. 우리는 또한 Mapserver가 지원하는 커버리지 (WCS)를 제공하고 있으며 WCS-T 지원을 위해 Rasdaman을 통합하려고합니다. 이것은 PostGIS 데이터베이스에 의해 지원됩니다.

응용 프로그램을 백엔드, 중간 및 프론트 엔드로 나누고 각 소프트웨어의 장단점을 읽는 것이 좋습니다. 각 계층에 대해 몇 가지 솔루션 만있을 수 있지만 조합 적으로 증가합니다.

ESRI는 제품이이 모든 것을 가능하게한다고 생각하지만 비용이 많이 듭니다. 시간이 부족한 경우 상업 경로가 갈 수 있지만 오픈 소스 경로는 매우 흥미로운 방향으로 가고 있으며 결국 ESRI가 취할 수있는 모든 것을 능가 할 것으로 의심됩니다. 그러나 나는 편향된 FOSS fanboi입니다 :)


2
P.Mapper ( pmapper.net ) 및 GeoMoose ( geomoose.org )를 살펴보면 자신의 데이터로 설정하기가 매우 쉽고, MS4W가있는 Windows 상자에서 진행할 수 있습니다. Linux 설정으로 전환 할 수 있습니다. p.mapper의 초기 단계에 대한 개요가 있지만 관심이 있으시면 스페인어로되어 있습니다.
jdeltoro1973

18

당신은 MangoMap www.mangomap.com을 볼 수 있습니다.

사용 가능한 도구를 사용하여 원하는 맵을 만들 수 있어야합니다.

호스팅되고 무료이므로 배포하는 데 시간과 노력이 거의 필요하지 않습니다.


14

귀하가 제안하는 기능에 대해서는 귀하의 요구를 충족시키는 가장 간단하고 설치하기 쉬운 스택이 무엇인지 살펴볼 것입니다. "빠르고 강력하거나 저렴할 수 있습니다. 두 가지를 선택하십시오."라는 소프트웨어 여기에 확실히 적용됩니다.

기능 식별과 같은 간단한 쿼리 만 수행하려는 경우 PostGIS의 기능이 과도 할 수 있습니다. shapefile을 데이터 저장소로 GeoServer에 직접 업로드하는 것이 훨씬 더 간단합니다.

OpenLayers 다시 한 번 대단한 및 WGS84 및 웹 메르카토르가 아닌 다른 좌표계를하지만 그때는 볼 것이다 해당 기능의 사용을 만들려고하지 않는 경우에 대한 지원 등 많은 기능이 리플릿 , 내 경험에 훨씬 적은있다을 새로운 사용자를위한 가파른 학습 곡선.

또한 자신의 서버에서 앱을 호스팅해야한다는 요구 사항이없는 경우 투자 시점에서 더 많은 것을 얻을 수 있으므로 호스팅 옵션 중 일부를 살펴볼 수 있습니다. MangoMap 또는 GeoCommons 를 사용 하면 한 줄의 코드를 작성하지 않고도 사용자에게 우수한 맵을 얻을 수 있습니다.

이것이 코드를 작성하려는 프로젝트 인 경우 CartoDBMapBox도 살펴볼 수 있습니다 . 이 모든 호스팅 플랫폼에 대해 더 알고 싶다면 주제를 선택하는 데 필요한 모든 세부 정보를 제공 하는 무료 전자 책썼습니다 .

공개 : 나는 망고지도의 창시자입니다


domaine nae이 (가) 판매되기 때문에 무료 ebook 링크가 끊어졌습니다. Dropbox 또는 다른 웹 사이트와의 링크를 편집하고 링크를 변경할 수 있습니까?
GeoStoneMarten

13

웹 맵을 개발할 때 시작해야 할 곳이 많이 있습니다.

웹 개발자로서 경험이 있다면 웹에서 맵을 게시 할 수있는 다양한 서비스를 조사하는 것부터 시작해야합니다. 있다 다른 질문에 당신에게 사용할 수있는 플랫폼의 차이점에 대한 귀중한 통찰력을 줄 것이다이 사이트에 여기에 대답은.

새로 시작하고 특정 플랫폼에 전념하고 싶지 않다면 비즈니스 요구 사항을 해결하십시오. 지도에서 데이터를 어떻게 그리나요? 데이터는 어떻게 업데이트됩니까? 이 사이트는 누가 사용합니까? 그들은 그것으로 무엇을 할 것인가? 이러한 결정을 일찍 내리면 조각을 모으거나 목표를 향한 확장을 지원할 선택을하는 데 도움이됩니다.

비용에 관해서는 ... 나는 현대의 속담을 빌리는 것을 선호한다 : "좋고 빠르며 싸다. 두 개를 골라라." 공식적으로 프로젝트 관리 삼각형 (Project Management Triangle) 으로 정의되며, 비용, 일정 및 품질을 가져 오는 범위 간의 균형을 설명합니다.


12

나도 최근 데이터베이스 측면에서 수년이 지난 후 웹 매핑 여행을 시작했습니다.

MapInfo에 MapBasic을 사용하여 기본 프로그래밍 원리를 배우는 데 실제로 도움이 된 것은 (또는 esri 군중을 위해 Python을 가정하고 있습니다) 컴퓨터가 어떻게 "생각"하는지 이해하는 데 실제로 도움이되었습니다.

거기서부터 CodeAcademy 는 신의 선물이었습니다. 프로그래밍을 배우는 정말 재미 있고 직관적 인 방법입니다. "Hello World"예제에서 모든 기능을 갖춘 대화식 프로그램으로 안내 할 수 있습니다. 학습 곡선은 점진적이며 일부 사람들은이 물건으로 재능이 있고 다른 사람들은 (나 같은) 그렇지 않다는 것을 이해합니다.

두 번째 조언은 GeoServer를 설치하고 데모 요청을보고 웹 서비스의 구조와 작동 방식을 확인하는 것입니다. Javascript와 HTML이 함께 작동하는 방법을 보려면 레이어 미리보기를 살펴보십시오. 문자 그대로 해당 레이어 미리보기 코드 (페이지 소스보기)를 복사하여 어딘가에 저장 한 후 땜질을 시작할 수 있습니다.

W3 스쿨 – 플 링글 링 코드를 가지고 연주하고 적응할 수있는 대화식 예제가 있습니다. JavaScript를 결정하면 JS Fiddle도 매우 좋습니다.



9

클라이언트 측에 OpenLayers 를 사용할 수 있습니다 . 안정적이고, 쉽고, WFS (귀하의 경우 PostgreSQL에 연결하기 위해) 등을 사용하는 방법에 대한 수많은 예제가있었습니다. Geoserver, OSM은 렌더링 목적으로이를 사용합니다.

또한 맵 작성을위한 extJS 위젯을 제공하는 GeoExt 를 살펴볼 수도 있습니다 . 또한 geoext는 맵 렌더링에 OpenLayers를 사용합니다.

GeoMoose , CartoWeb 등과 같은 MapServer (OpenLayers는 이미 지원) 를 사용하는 PHP 기반 프레임 워크도 있습니다 .

기본 템플릿이있는 MapScript 바인딩에서 실행되는 PHP 프레임 워크와 달리 전체 웹 페이지 디자인을 결정할 수 있기 때문에 OpenLayers에 투표하고 큰 코드베이스를 관리하는 것이 쉽지 않다는 것을 알았습니다.


8

대부분의 웹 개발에 필요한 세 가지 기술 (웹 매핑 포함)은 html, css 및 javascript입니다. 이러한 언어를 배울 수있는 자료는 충분합니다. 웹 매핑 응용 프로그램을 개발하는 방법을 배우기 시작하는 주제는 GIS 스택 교환 질문 웹 매핑을 시작하는 방법 에 대해 잘 설명되어 있습니다 .

프로그래밍 경험이 제한적인 경우 웹 매핑 응용 프로그램 개발을 살펴볼 수있는 리소스 중 하나는 mapbox 입니다. Javascript 또는 python과 같은 스크립팅 언어를 사용하지 않고 예제에서 사용하는 것과 같이 복잡하고 대화식으로 웹 맵을 생성하는 것이 어려울 것이지만 코딩없이 웹 맵을 생성 할 수 있다고 생각합니다.


7

나는 leafletjs를 사용 하며 매우 간단하다고 생각합니다. 자바 스크립트 기반이며 다양한 데이터 소스를 사용하여 기능을 그릴 수 있습니다. 기본적으로 맵 코드를 .html 파일에 삽입 한 다음 파일을 봅니다. 다른 API에 대해서는 언급 할 수 없지만 Openlayers뿐만 아니라 Google은 매우 간단하다고 생각합니다.

또한 MapBox와 같은 서비스를 통해 html 파일을 호스팅하지 않아도되며 데이터를 업로드해야합니다.


6

qgis + qgis2leaflet 플러그인을 사용하는 가장 쉬운 방법이라고 생각합니다. 전단지로 내보내고 웹 서버에 업로드하는 것보다 qgis에서 원하는 것을 편집 할 수 있습니다. 또는 다음보다 더 흥미로운 방법을 선택하는 경우 :

  1. 데스크탑 gis : qgis
  2. 데이터베이스 관리자 : navicat
  3. 웹 서버 : 기본 VPS
  4. webgis 패키지 : boundlessgeo geosuit (postgresql / postgis, geoserver 및 geoexplorer 포함)

geoexplorer 대신 전단지 javascript를 사용합니다. 더 좋게 보이고 부드럽게 실행되기 때문에 ...하지만 코드를 복사 / 붙여 넣는 데 약간의 시간이 걸립니다. 예를 들면 다음과 같습니다. http://gis.xyz


5

주목해야 할 것은 Web-Gis는 광대 한 분야이며, 이러한 노력을 돕기 위해 이미 여러 프로젝트와 라이브러리에서 많은 작업이 수행되었다는 것입니다. 따라서 처음부터 시작하는 대신 재사용 할 수있는 것이 있는지 확인해야합니다.

나쁜 소식은 PHP에서 웹 매핑을위한 인기있는 라이브러리 / 응용 프로그램이 없다는 것입니다. 좋은 소식은 필요하지 않을 수도 있다는 것입니다.

먼저 WebMapping을 이해하고 이미 존재하는 프로젝트 및 라이브러리를 이해하는 것이 좋습니다. 이를 위해 다음 질문을 참조하십시오.

사용 가능한 옵션을 이해했으면 요구 사항을 명확히해야합니다. 질문을 살펴보면 매우 기본적인 요구 사항이 있습니다. 맵에 소포 표시 쿼리에 대한 허용, 소포에 대한 속성 가져 오기 및 쿼리 결과 또는 사용자가 클릭 할 때 사용자에게 표시합니다.

이러한 종류의 작업은 Google지도를 사용하여 가능하지만 많은 양의 데이터가있을 때 Google Maps API를 사용하기가 쉽지 않기 때문에 권장하지 않습니다.

대신 JavaScript로 작업 할 수 있다면 Geoserver / OpenLayers 솔루션을 사용하는 것이 좋습니다. 데이터가 기능의 속성에 모두 있다면 PHP 코드가 필요하지 않을 수도 있습니다.


나는 JQuery와 다른 Jscript 라이브러리에 능숙하며 ExtJS에 대해서도 언급했다. 한 가지 질문은,지도에서 영역을 어떻게 그리고 어떻게 DB로 내보내는가? 지도의 내용에 전적으로 의존해야합니까, 아니면지도를 그릴 수 있습니까? 그것이 어떻게 달성됩니까?
처칠

구획 파일 또는 다른 형식으로 된 소포 데이터가있는 경우 Google지도 / 기타 기본 맵 위에 wms 레이어로 표시 할 수 있습니다. 이 WMS 계층은 Geoserver / mapserver에서 제공 할 수 있습니다. 또한 벡터 레이어를 사용하여 항상 새로운 기능을 그릴 수 있습니다.
Devdatta Tengshe

5

웹 매핑을위한 가장 인기있는 자바 스크립트 라이브러리 인 OpenLayers의 훌륭한 대안은 Leaflet 입니다.

GeoServer와 함께 Leaflet을 사용하여 일부 대화 형 작업을 포함하여 멋진 맵을 만듭니다. 사용자 정의 코딩이 필요하지만 그리 많지는 않지만 OpenLayers보다 사용하기가 훨씬 쉽습니다.


5

Leaflet과 OpenLayers를 결정하기 전에 정리 된 API와 더 나은 문서를 약속하는 다음 버전을 살펴볼 가치가 있습니다.

OpenLayers 3은 최신 HTML5 및 CSS3 기능을 대상으로 라이브러리를 포괄적으로 다시 작성한 것입니다. 라이브러리는 OpenLayers 2.x의 프로젝션, 표준 프로토콜 및 편집 기능을 계속 지원합니다. 새로운 버전의 라이브러리는 성능 개선, 더 가벼운 빌드, 더 예리한 시각적 구성 요소, 개선 된 API 등에 중점을 둘 것입니다. 주요 특징 중 일부는 다음과 같습니다.

------8 <------ 

새로운 코드베이스 : OpenLayers에서 작업을 수행하는 "고르지 않은"방법을 정리할 수있는 기회를 제공합니다. 또한 팀은 새로운 API 디자인을 만들어 모든 사람들이보다 쉽게 ​​이용할 수있게 할 것입니다.

고품질 문서 : 새 릴리스에는 OpenLayers 3.0의 새로운 예제와 기본 디자인이 포함 된 문서도 포함됩니다. 툴킷을 눈에 띄게 만드는 것은 실제 코드 이상의 것입니다.

http://openlayers.org/


5

Google Maps API로 시작하겠습니다 . 무료이며 작업하기 쉽습니다. Javascript를 사용하는데, 이는 많은 훌륭한 자료를 통해 배울 수 있습니다. JS를 처음 사용하는 경우 Codecademy를 권장 합니다.

다양한 방법 (KML, 데이터베이스, GeoRSS 등)을 통해 Google지도에 통합 할 수있는 무료 데이터 소스가 많이 있습니다. 대부분의 주와 많은 대학에는지도에 통합 할 수있는 무료 데이터 저장소가 있습니다.

Google지도에서 가장 좋아하는 사이트 중 하나는 Google Maps Mania 입니다. 이 API에서 가능한 것을 보여주는 훌륭한지도 예제가 있습니다.


5

GeoPHP 는 살펴볼 가치가 있습니다.

GeoPHP는 지오메트리 작업을 수행하기위한 오픈 소스 네이티브 PHP 라이브러리입니다. PHP로만 작성되므로 공유 호스트에서 실행할 수 있습니다. WKT (EWKT 포함), WKB (EWKB 포함), GeoJSON, KML, GPX, GeoRSS 등 다양한 형식을 읽고 쓸 수 있습니다. 모든 Simple-Feature 지오메트리 (Point, LineString, Polygon, GeometryCollection 등)와 함께 작동하며 중심, 경계 상자, 면적 및 기타 다양한 유용한 정보를 얻는 데 사용할 수 있습니다.

또한 GEOS 확장 을 통해 한 단계 업그레이드 할 수 있습니다 (GEOS 설치에 대한 관리자 권한이 있다고 가정).

GEOS를 사용하면 Union, IsWithin, Touches 등과 같은 PHP에서 전체 openGIS 함수 세트를 얻을 수 있습니다. 이는 애플리케이션이 모든 환경에서 작동하는 지오메트리 연산의 유용한 "코어 세트"및 "확장 세트" GEOS가 설치된 환경에 대한 작업.


4

맞춤 PHP 스크립트는보다 강력하고 간단한 솔루션 일 수 있습니다. 공간 데이터는 데이터베이스의 행일 뿐이며 평소와 같이 쿼리 할 수 ​​있습니다. 무거운 서버 GIS 소프트웨어 및 / 또는 끔찍한 OGC 필터 구문이 필요하지 않습니다. 내가 당신의 신발에 있다면 PostGIS 확장을 사용하여 PostgreSQL 데이터베이스에 데이터를 저장하고, 데이터베이스를 쿼리하기 위해 PHP 백엔드를 작성하고 GeoJSON 형식으로 데이터를 검색하고 ( 이 요점 참조 ) 프론트 엔드 웹 애플리케이션을 기반으로합니다. OpenLayers-Google Maps API보다 융통성이 있지만 원하는 경우 Google 기본 맵을 계속 사용할 수 있습니다.


이 방법은 효과가 있지만, 카운티 / 지구의 소포와 같은 대량의 데이터로 인해 느리고 무거울 것입니다.
Devdatta Tengshe

3

선택에 대한 도움이 필요 하면 ArcGIS Online의 대안 질문지리 정보 지식을 확장하는 데 가장 중요한 책, 저널, 전자 자료는 무엇입니까? 학습 자료에 대한 질문 .

웹 매핑 비용에는 호스팅 (웹 사이트 비용 지불) 및 서버 저장 공간이 포함됩니다 (매핑 서비스를 사용하는 경우 매월 MapBox 요금CartoDB 요금을 확인하십시오 ). 궁극적으로 웹 개발을 아는 것은지도를 만드는 데 매우 중요합니다.


2

사용할 수있는 몇 가지 매핑 라이브러리가 있습니다.

첫 번째 (아마도 가장 잘 알려진)는 Google Maps API 이지만 웹 매핑이 비교적 익숙하지 않은 경우 상당히 복잡 할 수 있습니다.

Leaflet.js 또는 Mapbox.js를 살펴 보는 것이 좋습니다 . Mapbox.js는 Leaflet을 염두에두고 작성되었으며 Mapbox는 Mapbox.js로 수행 할 수있는 다양한 작업에 대한 훌륭한 자습서 를 제공합니다. 전단지 에는 몇 가지 예와 자료가 있습니다.

다음은 올바른 방향으로 안내하는 데 도움이되는 예에 대한 특정 링크입니다.




-3

UMN 맵 서버를 사용할 수 있습니다. 여기에서 PHP 스크립트 (맵 스크립트라고 함)를 사용할 수 있습니다. 이것은 Apache 서버를 기반으로합니다. 데이터베이스를 원한다면 공간 확장 기능을 갖춘 MySQL 또는 postGIS와 함께 PostgreSQL을 사용할 수 있습니다 ...

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.