2013-03-19 2 views
3

영국의지도가 포함 된 시각화를 제작하려고합니다. 전체지도는 ~ 650 명의 선거구가 있습니다. 이 우수한 자습서 http://bost.ocks.org/mike/map/을 따라지도를 그렸습니다. 그러나 선거 구민들을 위해 찾을 수있는 유일한 원천은 인스 트 런스 설문 (자연 지구에는 군단이 있지만 선거구는 아님)입니다. 문제는 OS 구성 파일에는 동일한 유형의 좌표가 포함되어 있지 않습니다 (사용자가 말할 수있는 것처럼 GIS 전문가가 아닙니다), 그들은 횡단 Mercator 투영을 사용합니다.D3을 사용하여 시각화를위한 모양 파일 투영 변경

PROJCS["British_National_Grid",GEOGCS["GCS_OSGB_1936",DATUM["D_OSGB_1936",SPHEROID["Airy_1830",6377563.396,299.3249646]],PRIMEM["Greenwich",0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",400000],PARAMETER["False_Northing",-100000],PARAMETER["Central_Meridian",-2],PARAMETER["Scale_Factor",0.999601272],PARAMETER["Latitude_Of_Origin",49],UNIT["Meter",1]] 

내 질문은 : 저는 여기에 변환을 시도하고있는 데이터의 .PRJ 파일의 속성은 어떻게 D3에 프로젝션이를 변환 할 수 있습니까? 나는 ogr2ogr과 TopJson을 설치했으나 이것들을 할 수 있는지 확실하지 않아 기초 지식이 충분하지 않기 때문에 어디서나 정보를 찾을 수 없습니다.

TIA

+1

나는 이틀 전에 너와 똑같은 자리에 있었는데, 올바른 도구는 실제로 ogr2ogr이었다. 나는이 스 니펫을 보냈는데'ogr2ogr output.shp input.shp -t_srs "+ proj = longlat + ellps = WGS84 + no_defs + towgs84 = 0,0,0"'그러나 이것은 당신의 경우에 적용되는지 모르겠습니다. 희망을 갖고 누군가가 더 나은 대답을 내놓을 수 있기를 바랍니다. 그렇지 않다면 http://gis.stackexchange.com을 시도하십시오. – Duopixel

+0

정말 고마워요. 응답보다 우연의 일치 인 – toby

+0

을 추가 하시겠습니까? 가능한 경우 (48 시간) 현상금을 추가하여 답변에 대해 궁금해 할 때 제대로 설명됩니다. – Duopixel

답변

8

공간 데이터는 지정된 좌표계에서 지정됩니다. 이 좌표계는지도 캔버스와 같이 공간의 특정 지점에 좌표를 투영하는 데 사용됩니다. 말 그대로 지리 데이터에 대한 수백 가지의 서로 다른 좌표계가 있습니다. 그 이유 중 하나는 지구가 투영과 관련하여 잘 행동하지 않는다는 것입니다. 완벽한 구형이 아니며 다른 좌표계가 다른 장소에서 가장 잘 작동하는 경향이 있습니다 ("가장 잘 작동하는"은 한 번 당신의 정확도를 나타냅니다. 지구 표면에 점을 투영하십시오). 자세한 내용은 on wikipedia을 참조하십시오.

좌표계와 투영법을 정의하는 것이 반드시 어렵거나 많은 작업은 아니지만 사용하기 전에 수행해야합니다. 이것이 D3가 알지 못하는 (영국 국립 그리드) 좌표계를 사용하여 데이터를 상자 밖으로 가져올 수 없었던 이유입니다. 따라서 옵션을 one that D3 does know about으로 변환하거나 D3에서 좌표계를 구현하십시오. 전자는 거의 항상 쉬운 방법입니다.

명령 ogr2ogr output.shp input.shp -t_srs "+proj=longlat +ellps=WGS84 +no_defs +towgs84=0,0,0"은 변환 유니버설 횡 메르카토르 (UTM) WGS84의 형식으로 입력 Shape 파일 (지리적 데이터의 파일 형식) input.shpoutput.shp에 관계없이 좌표계의 사용 (이의 t_srs 문자열이 무엇을 의미하는지 더 on wikipedia입니다) 입력에.

t_srs에 주어진 목표 좌표계 인수는 명시 적 정의 (위의 예와 같이), 잘 알려진 좌표 시스템에 대한 참조 또는 정의가 포함 된 파일 일 수 있습니다. 잘 알려진 좌표계 목록은 예를 들어 here입니다.