ArcGIS Online
Trực quan hóa diễn biến đám cháy
Tác giả: John Nelson
Năm ngoái, trong vụ cháy tàn khốc tôi đã rà soát các dịch vụ dữ liệu hiện có và tự hỏi có cách nào có thể giúp tôi có thể quan sát được đám cháy. Phương pháp trực quan nào có thể giải quyết được hiện tượng này? Diện tích đám cháy có thể được hiển thị tự động trên bản đồ hay không? Còn khả năng ngăn chặn, kiểm soát các đám cháy hoặc thời lượng của các đám cháy thì sao? Dịch vụ phần mềm nào có thể hiển thị một cách trực quan tất cả các yếu tố trên và cả những yếu tố tương tự khác nữa?
Tôi đã tìm nguồn dữ liệu Active Fires trong Living Atlas và tìm thấy một nguồn dữ liệu tuyệt vời trong dịch vụ chữa cháy đó là GeoMAC - có thể hiển thị được các đám cháy đang hoạt động cũng như phạm vi đám cháy. Khi được biểu thị bằng ký hiệu đom đóm, những đám cháy này thực sự trông giống như lửa và bản đồ nền Firefly cung cấp bối cảnh địa hình rất quan trọng để hiểu được điều kiện cần và đủ của các đám cháy là gì?
Tôi đã liên lạc với một người bạn tên là Jinnan Zhang,một chuyên gia tài ba về phát triển ứng dụng phần mềm tại Esri, và hỏi liệu anh ấy có muốn hợp tác không (như chúng tôi vẫn luôn hợp tác về: PhotoChrome, BlastMap, Brick-ifier, NYC Cab Map, và hai ứng dụng bí mật khác) về việc tạo ra một ứng dụng có thể cung cấp thông tin hỏa hoạn một cách hiệu quả. Jinnan đã nhận lời và rất hào hứng vì anh ấy cho rằng ý tưởng này sẽ có thể rất hữu ích. Một trong những thách thức khi làm việc ở đây là rất nhiều chuyên gia có kinh nghiệm phong phú trong nghiên cứu về bản đồ và công nghệ. Jinnan là ví dụ điển hình. Được làm việc cùng họ là một điều vinh dự.
Dưới đây là một mô hình ví dụ John đã gửi cho Jinnan, mô tả ý tưởng và thiết kế:
Chúng tôi đã thảo luận về thanh công cụ tìm kiếm hoặc hộp tìm kiếm hoặc kết hợp cả 2.
Một mô hình ví dụ khác:
Tuy nhiên, tôi đã bổ sung dữ liệu trên ArcGIS Online và áp dụng một số quy tắc điển hình. Sau đó, hợp nhất nó thành một Ứng dụng web và cộng tác với Jinnan về cách cải biến này. Tôi sẽ phác thảo một phiên bản và nghiên cứu kỹ về JSAPI, tôi không ngừng nung nấu những ý tưởng và cập nhật để biến chùng thành những phiên bản ngày càng hoàn hảo hơn.
Dưới đây là ý kiến của Jinnan, mô tả những gì diễn ra bên trong ứng dụng mà chỉ tôi là người duy nhất hiểu được nó, tuy vậy tôi cũng chỉ hiểu ở mức độ cơ bản.
Quan điểm của Jinnan
Ứng dụng này được xây dựng bằng ArcGIS API for JavaScript. Thời gian đầu, chúng tôi bắt đầu với Trình duyệt ArcGIS Online Map Viewer, bổ sung thêm báo cáo Active fire report – Báo cáo tình trạng đám cháy từ lớp bảo vệ tường lửa USA Wildfire Activity layer của Mỹ và tạo ra đồng bộ ẩn các biểu tượng Firefly để thể hiện khu vực bị cháy được sắp xếp theo mức độ. Mọi việc thật đơn giản!
Nhưng chúng tôi biết rằng ứng dụng tự động hóa này sẽ cần phải có một phương pháp phân loại đa dạng, sinh động để duy trì hệ thống ký hiệu của các đám cháy lớn và các đám cháy nhỏ khi mùa cháy rừng bùng nổ cũng như khi mùa cháy rừng đã hạ nhiệt.
Để làm điều đó, chúng tôi đã sử dụng ClassBreakRenderer để nhúng biểu tượng kích thước của mỗi đám cháy dựa trên mức độ của vùng cháy đó. Tiếp đến là kích hoạt lớp thông tin thuộc tính về Active Fire Report để tạo những báo cáo cập nhật trong JSON với năm lớp thông tin để nhúng dữ liệu vào. Bây giờ chúng ta chỉ cần thay thế biểu tượng mặc định cho từng mục trong classBreakInfos bằng biểu tượng điểm Firefly.
Với ứng dụng ClassBreakRenderer mới này, với đối tượng chỉnh sửa được biến thiên, hiển thị lớp thông tin Active Fire Report layer dưới dạng các điểm Firefly phát sáng! Đây là một ứng dụng thử nghiệm trên JS Bin nếu bạn muốn xem trực tiếp. Chúng tôi đã sao chép lớp này với màu sắc từ màu nhạt đến màu đậm hoặc kích thước khác nhau (từ nhỏ đến to) để tạo hiệu ứng tương ứng. Hiệu ứng tương ứng này giống như nguyên tắc của “Out Break” được mô tả theo đường link này.
Bên cạnh vị trí của đám cháy, chúng tôi cũng muốn gắn thêm dạng bảng vào vị trí đám cháy tương ứng, giống như thẻ ghi chú mức độ của tình huống đang xảy ra, hiển thị các biểu tượng lửa được sắp xếp theo kích thước, với chỉ dẫn bằng hình ảnh về tỷ lệ phần trăm mà đám cháy đã được ngăn chặn. Sau khi xem theo chế độ xem lưới cuộn, chế độ xem theo thời gian cũng trở nên hữu ích. Chế độ xem theo thời gian sắp xếp tất cả các đám cháy theo trình tự thời gian và hàng tháng sẽ được đem ra phân tích.
Tất cả được xây dựng chỉ bằng HTML và CSS. Bảng điều khiển trực quan và bản đồ được liên kết với nhau thông qua một trình duyệt. Trình duyệt này tuân theo các sự kiện gắn với các phạm vi bản đồ, vì vậy chúng vẫn được đồng bộ hóa như một tầng đất cái và phóng to. Bạn có thể xem đoạn trích về dòng thời gian HTML hoặc CSS theo đường link này. Và nếu bạn cảm không an toàn với đường link trên, bạn có thể tìm nguồn tài liệu trên GitHub.
Liên kết đến ứng dụng: esriurl.com/ActiveFires
Quay lại với John
Cảm ơn vì đã quan tâm đến nội dung bài viết! Tôi hy vọng bạn có thể tìm hiểu cụ thể các ứng dụng tại đây.
Điều gì sẽ xảy ra tiếp theo? Đây là một dự án phụ và chúng tôi đã nhận được nhiều phản hồi tốt từ mọi người trên Instagram. Một số trong những ý tưởng đó bao gồm quản lý rủi ro liên quan đến khói, đánh giá tình hình theo cường độ chứ không phải kích thước của đám cháy và đưa ra đường link gợi ý dành riêng cho việc khắc phục đám cháy. Nếu bạn có ý tưởng, hãy gửi cho chúng tôi. Chúng tôi mong muốn lắng nghe những ý kiến đóng góp của các bạn để ứng dụng này ngày càng trở nên hữu dụng.
Chúc cho sự cộng tác của chúng ta thành công !