2014-05-20 13 views
5

Tôi đang cố gắng vẽ một loạt các điểm trên bản đồ thành phố và gặp sự cố khi tìm một gói sẽ hoạt động tốt. Có vẻ như sơ đồ nền Matplotlib không bao gồm đủ chi tiết cho nhiều điểm trải dài bán kính 30 dặm, ví dụ: Tôi không thấy cách thêm đường cao tốc và các tính năng phân biệt khác ở quy mô nhỏ. Do đó, tôi hỏi bạn có thể đề xuất cách thêm các loại tính năng bản đồ thành phố này vào Sơ đồ trang web hoặc nếu có một gói khác sẽ hoạt động tốt cho các ô phân tán tỷ lệ 30 dặm trên bản đồ thành phố. Cảm ơn bạn đã giúp đỡ!Bộ công cụ python tốt để vẽ các điểm trên bản đồ thành phố?

Trả lời

4

Sơ đồ trang web sẽ hoạt động tốt, tôi nghĩ vậy. Việc thêm các ranh giới mã zip và đường chính/phụ (và nhiều dữ liệu khác) không có vấn đề gì nếu bạn có thể nhận được shapefiles địa lý. Dưới đây là một ví dụ đầu ra: enter image description here

Nếu bạn quan tâm đến việc lập bản đồ một nơi ở Mỹ, trang web này có shapefile miễn phí: http://www.landsat.com/free-gis-data.html

tôi đã sử dụng mã vùng và đường dữ liệu Texas (và một loạt các lat/coords dài) để tạo bản đồ ở trên.

Bạn sẽ nạp shapefile như thế này:

self.map = Basemap(projection='merc', lat_0=mlat, lon_0=mlon, resolution = 'l', area_thresh = 1.0, 
llcrnrlon=-num, llcrnrlat=num, 
urcrnrlon=-num, urcrnrlat=num) 

map.readshapefile('/home/person/zipfolder/rds/tl_2010_48_prisecroads', 'Streets',drawbounds = False) 

for shape in self.map.Streets: 
    xx, yy, = zip(*shape) 
    self.map.plot(xx, yy, linewidth = 1.5, color='green', alpha=.75) 
##Same for zip codes 
+0

Có điều gì mà làm việc năng động hơn? Tôi đang chụp ảnh nhiều vùng khác nhau, vì vậy không thể tải trước tất cả các bản đồ mà tôi cần. – user3654387

+0

Bạn có thể sử dụng Pymaps/Google Maps. https://code.google.com/p/pymaps/wiki/PymapsHowto – Ryan

+0

Cảm ơn bạn đã đề xuất này. Tôi sẽ kiểm tra nó và báo cáo lại về sự tiến bộ của tôi. – user3654387

Các vấn đề liên quan