Cú pháp logic Numpy trong Máy tính Raster QGIS GDAL

Aug 20 2020

Tôi cần đặt một biểu thức logic trong hộp của Máy tính Raster của GDAL bằng cách sử dụng Numpy. Kiến thức của tôi về Numpy và python cực kỳ hạn chế (Tôi không phải là Nhà phát triển mà chỉ là Nhà địa lý đơn giản!). Tôi đã thấy trên bài đăng này ( Sử dụng biến trong trình mô hình đồ họa để tính toán raster? (QGIS 3.8)) một ví dụ về cách nối 2 phần trong hộp đó, phần sử dụng các chữ cái (A, B, C ...) và phần còn lại từ các đầu vào khác như số. Trong ví dụ đó rất dễ dàng ('a +' || @numberinput). Câu hỏi của tôi là về các tuyên bố logic. Tôi đã thử 'a> =' || @numberinput và kết quả là sai. Tôi đã kiểm tra tài liệu thô và tất cả là về mảng, thông báo là loại phức tạp, tôi không cần phải làm quá nhiều, chỉ cần lấy các giá trị A đó nhỏ hơn hoặc lớn hơn kết quả từ công thức được biểu thị dưới dạng chuỗi lấy một số biến từ @numberinput. Mình đính kèm những hình ảnh đang làm mong các bạn giúp đỡ. Đã đặt ngưỡng sử dụng nối chuỗi, kết quả đầu ra sẽ được sử dụng trong Máy tính Raster GDAL

Sau đó, bên trong Máy tính Raster GDAL, bạn có thể thấy vấn đề của tôi:

Cuối cùng, bạn có thể thấy những gì tôi đang cố gắng thực hiện bên trong cửa sổ Biểu thức.

Tôi nghĩ đây là một câu hỏi không dễ đối với các chuyên gia về trăn.

Trả lời

1 Geografisica Aug 21 2020 at 20:11

Có vẻ như giải pháp tốt nhất cho vấn đề của tôi là giải pháp được đề xuất bởi @Gabriel De Luca, trong đó công thức có thể được thụt vào như sau: 'A <((-25) *' || @DayOfYear || ') + 7225 + 0 '. Nhưng tôi phải loại bỏ một số thành phần mô hình và đơn giản hóa nó như hình ảnh tôi đang đính kèm:

Cảm ơn bạn đã giúp giải quyết vấn đề này.