LSAPy: Land Suitability Analysis in Python | Research Square window.SnipcartSettings = { analytics: { enabled: false } }; (function() { var accessVector = localStorage.getItem('access_vector') || ''; window.dataLayer = window.dataLayer || []; if (accessVector) { window.dataLayer.push({ user: { profile: { profileInfo: { snid: accessVector } } } }); } })(); (function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start':new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0],j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src='https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f);})(window,document,'script','dataLayer','GTM-K279D39R'); Browse Preprints In Review Journals COVID-19 Preprints AJE Video Bytes Research Tools Research Promotion AJE Professional Editing AJE Rubriq About Preprint Platform In Review Editorial Policies Our Team Advisory Board Help Center Sign In Submit a Preprint Cite Share Download PDF Method Article LSAPy: Land Suitability Analysis in Python Baptiste Hamon This is a preprint; it has not been peer reviewed by a journal. https://doi.org/ 10.21203/rs.3.rs-8399348/v1 This work is licensed under a CC BY 4.0 License Status: Posted Version 1 posted You are reading this latest preprint version Abstract LSAPy is a highly customizable Python library designed to streamline and enhance Land Suitability Analysis (LSA) workflows. The package implements a fuzzy-logic approach and provides two core objects – SuitabilityCriteria and LandSuitabilityAnalysis – and one module (lsapy.standardize) that work together to deliver a flexible and user-defined LSA framework. By relying on xarray objects for computation (Hoyer and Hamman, 2017), LSAPy seamlessly integrates with the broader Python ecosystem, such as dask for efficient parallel processing and matplotlib for data visualisation. Its modular design addresses some limitations of existing LSA tools by offering greater flexibility, reproducibility, and scalability for research and practical applications. Software Engineering Figures Figure 1 Figure 2 Full Text Statement of need In the past decades, several software programs have been developed to perform land evaluation or suitability analysis, including ALES (Johnson & Cramb, 1991), Micro-LEIS (De La Rosa et al., 1992, 2004), LEIGIS (Kalogirou, 2002), ALSE (Elsheikh et al., 2013), and general-purpose GIS platforms (e.g., ArcGIS and QGIS) also provide functionalities for this purpose. While each of these tools offers distinct advantages, a limitation that often arises is the software-imposed constraints and the lack of freedom left to users (Asaad et al., 2022; Chen et al., 2022; Elsheikh et al., 2013). These limitations manifest in several ways. Desktop GIS solutions, for example, often present challenges related to operating system dependency, the cost of proprietary software (e.g., ArcGIS), and difficulties in integration with broader analytical frameworks (Chen et al., 2022). Furthermore, many specialised programs (e.g., Micro-LEIS, LEIGIS, ALSE) do not allow modification of the land characteristics used in the analysis (Asaad et al., 2022; Elsheikh et al., 2013). This rigidity is problematic, as the predefined land characteristics may not apply to all crops or may require other parameters. Additionally, some tools (e.g., LEIGIS) support only a limited selection of crops for evaluation (Elsheikh et al., 2013). Recently, two libraries – ALUES (Asaad et al., 2022) and PyLUSAT (Chen et al., 2022) – have been developed to address some of these limitations. ALUES, an R package, supports the evaluation of 56 crops and allows the addition of new ones. While it addresses some of the limitations discussed above, it falls short in others. For instance, it relies on fixed criteria grouped into three categories (i.e., land and soil, water, and temperature) that are unmodifiable (Asaad et al., 2022). PyLUSAT, a Python package, enables land suitability analysis using vector data, offering specific advantages such as bypassing the modifiable areal unit problem (MAUP) and the political relevance of object shape (Chen et al., 2022). Nevertheless, raster data models have been recognised as more appropriate for LSA applications because of their area-oriented structure (Malczewski, 2004). Moreover, raster-based approaches are generally more efficient for data combinations and complex calculations (Carr & Zwick, 2007), particularly when integrating climate data, which is often distributed in netCDF format and best processed using raster routines. Converting such data to a vector format for analysis is technically feasible but suboptimal, leading to increased computational overhead and memory usage. Consequently, raster-based methods are essential for large-scale analyses, such as land suitability assessments using climate projections. Beyond these technical constraints, the lack of user flexibility in existing software introduces further limitations. First, when programs offer a restricted set of functionalities, they hinder the reproducibility of scientific results. For instance, ALSE aggregates criteria suitability using the maximum limitation method (Elsheikh et al., 2013), whereas ALUES provides only minimum, maximum, and average aggregation options. This discrepancy renders the reproduction of cross-software results impossible. Second, tools designed for specific use cases (e.g., agriculture) limit broader adoption and, in the case of free and open-source software (FOSS), may impede community engagement and growth. Finally, rigid frameworks restrict the ability to explore edge cases or out-of-the-box analyses, which are increasingly important in a rapidly changing environment. The limitations of existing software programs motivated the development of LSAPy (Land Suitability Analysis in Python), a new, highly customizable Python package supporting array-like data, such as raster and netCDF formats. Thanks to its customisation approach, frameworks used in most software programs mentioned above can be implemented in LSAPy. Land Suitability Analysis Workflow LSAPy provides two core objects and one module that operate together to perform the land suitability analysis (LSA) according to user-defined frameworks (Figure 1). Standardize Module lsapy.standardize provides a set of standardization functions used to transform input data (e.g., slope, annual mean temperature, annual total precipitation…) into a standardised scale of suitability values ranging from 0 to 1 (Figure 1). LSAPy includes built-in functions for both discrete and continuous data. For the latter, the package follows a fuzzy-logic approach, implementing sigmoid-like and Gaussian-like membership functions previously used in LSA studies. Suitability Criteria The SuitabilityCriteria defines an individual criteria used in LSA. Its func property refers to a standardization function, while indicator specifies the input data (Figure 1). The weight and category properties allow users to customise how each criteria is aggregated with others in the analysis. is_computed indicates whether the indicator already corresponds to suitability values and does not need further computation. Finally, the compute() method applies the standardization function to the given indicator to calculate the suitability score. Land Suitability Analysis LandSuitabilityAnalysis is the top-level class in LSAPy, defining the LSA framework (Figure 1). All criteria for the analysis are stored in the criteria property. The category, criteria_by_category and weight_by_category properties are populated based on defined criteria, with the first one listing all unique categories, and the latter two their associated criteria and weight, respectively. The run() method executes the LSA, with parameters specifying the level of suitability to compute (i.e., criteria, category, or overall land suitability) and the aggregation method to use. Currently, supported aggregation methods include median, mean, weighted mean, geometric mean, weighted geometric mean, and limiting factor. Additional Features The stats module offers functions for computing spatial (e.g., national, regional…) summary statistics of land use suitability. LSAPy’s open_data function provides access to sample datasets, including soil/land data from NZGLID (Hamon, 2025) and climate data from NEX-GDDP-CMIP6 (Thrasher et al., 2022) for tutorial and training purposes. Workflow Example For this example, a land suitability analysis was performed using the soil and climate data provided in LSAPy, covering the New Zealand territory. Three suitability criteria were defined: slope, annual precipitation excess, and the growing temperature requirement. The first criteria was categorised under "soilTerrain", while the latter two were grouped under "climate". The indicators associated with each criteria were the slope (in degrees), annual total precipitation (in mm), and annual mean temperature (in °C), respectively, and are presented in Figure 2. It is important to note that the chosen criteria, indicators and standardisation functions are for demonstration purposes only and do not correspond to an actual land suitability analysis for any specific crop. A comprehensive LSA would typically involve a larger number and more complex criteria. The suitability of each criteria was computed by applying the defined standardisation functions (Figure 2). The criteria suitability were then aggregated: first, the suitability of the "soilTerrain" and "climate" categories was calculated, and then the overall land suitability was derived by combining the two categories. In this simple example, the arithmetic mean was used for all aggregation steps. The resulting land suitability map is also presented in Figure 2 and allows identifying the most suitable areas based on the defined criteria. Research Applications LSAPy has been used to assess the impact of climate change on apples, cherries, maize and wheat in New Zealand (Hamon et al., 2025a, 2025b) and is the core component of the New Zealand Land Use Suitability Database. Declarations Acknowledgements The development of LSAPy began as part of a PhD funded by the Food Transition 2050 Joint Postgraduate School. References Asaad, A.-A. B., Salvacion, A. R., & Yen, B. T. (2022). ALUES: R package for Agricultural Land Use Evaluation System. Journal of Open Source Software, 7(73), 4228. https://doi.org/10.21105/joss.04228 Carr, M. H., & Zwick, P. D. (2007). Smart Land-use Analysis: The LUCIS Model Land-use Conflict Identification Strategy. ESRI, Inc. Chen, C., Judge, J., & Hulse, D. (2022). PyLUSAT: An open-source Python toolkit for GIS-based land use suitability analysis. Environmental Modelling & Software, 151, 105362. https://doi.org/10.1016/j.envsoft.2022.105362 De La Rosa, D., Mayol, F., Diaz-Pereira, E., Fernandez, M., & De La Rosa, D. (2004). A land evaluation decision support system (MicroLEIS DSS) for agricultural soil protection. Environmental Modelling & Software, 19(10), 929–942. https://doi.org/10.1016/j.envsoft.2003.10.006 De La Rosa, D., Moreno, J. A., Garcia, L. V., & Almorza, J. (1992). MicroLEIS: A microcomputer‐based Mediterranean land evaluation information system. Soil Use and Management, 8(2), 89–96. https://doi.org/10.1111/j.1475-2743.1992.tb00900.x Elsheikh, R., Mohamed Shariff, A. R. B., Amiri, F., Ahmad, N. B., Balasundram, S. K., & Soom, M. A. M. (2013). Agriculture Land Suitability Evaluator (ALSE): A decision and planning support tool for tropical and subtropical crops. Computers and Electronics in Agriculture, 93, 98–110. https://doi.org/10.1016/j.compag.2013.02.003 Hamon, B. (2025). New Zealand Gridded Land Information Dataset (NZGLID) (Version v1.1) [Dataset]. Zenodo. https://doi.org/10.5281/ZENODO.16249350 Hamon, B., Quénol, H., Vannier, C., & Cochrane, T. A. (2025a). Bridging the Gaps in the Future Agroclimatic Suitability of Crops in New Zealand. EGU General Assembly 2025, Vienna, Austria, 27 Apr–2 May 2025, EGU25-1157. https://doi.org/10.5194/egusphere-egu25-1157 Hamon, B., Quénol, H., Vannier, C., & Cochrane, T. A. (2025b). Regional Impacts of Climate Change on New Zealand’s Agriculture: Land Suitability Analysis of Key Crops. [Manuscript Submitted for Publication]. Johnson, A. K. L., & Cramb, R. A. (1991). Development of a simulation based land evaluation system using crop modelling, expert systems and risk analysis. Soil Use and Management, 7(4), 239–246. https://doi.org/10.1111/j.1475-2743.1991.tb00881.x Kalogirou, S. (2002). Expert systems and GIS: An application of land suitability evaluation. Computers, Environment and Urban Systems, 26(2–3), 89–112. https://doi.org/10.1016/S0198-9715(01)00031-X Malczewski, J. (2004). GIS-based land-use suitability analysis: A critical overview. Progress in Planning, 62(1), 3–65. https://doi.org/10.1016/j.progress.2003.09.002 Thrasher, B., Wang, W., Michaelis, A., Melton, F., Lee, T., & Nemani, R. (2022). NASA Global Daily Downscaled Projections, CMIP6. Scientific Data, 9(1), 262. https://doi.org/10.1038/s41597-022-01393-4 Additional Declarations The authors declare no competing interests. Cite Share Download PDF Status: Posted Version 1 posted You are reading this latest preprint version Research Square lets you share your work early, gain feedback from the community, and start making changes to your manuscript prior to peer review in a journal. As a division of Research Square Company, we’re committed to making research communication faster, fairer, and more useful. We do this by developing innovative software and high quality services for the global research community. Our growing team is made up of researchers and industry professionals working together to solve the most critical problems facing scientific publishing. Also discoverable on Platform About Our Team In Review Editorial Policies Advisory Board Help Center Resources Author Services Accessibility API Access RSS feed Manage Cookie Preferences © Research Square 2026 | ISSN 2693-5015 (online) Privacy Policy Terms of Service Do Not Sell My Personal Information {"props":{"pageProps":{"initialData":{"identity":"rs-8399348","acceptedTermsAndConditions":true,"allowDirectSubmit":true,"archivedVersions":[],"articleType":"Method Article","associatedPublications":[],"authors":[{"id":563768528,"identity":"af6d7729-4a61-49f7-9272-34b4104e9866","order_by":0,"name":"Baptiste Hamon","email":"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAZAAAAAyAQMAAABI0h/eAAAABlBMVEX///8AAABVwtN+AAAACXBIWXMAAA7EAAAOxAGVKw4bAAABXUlEQVRIie2RMUvDQBSAX4lcl5OuB5XmL1woJAZL8KfcEUiXtiIFJ8GDwrkU53TyL+giukUKdal2TclSETuJtAilYFAT22pjha6C+Yb3uLv38e7eAaSk/EFoHFgcyOe69OPodyUjWJxmijPfZ2sU+Fba6xUje3szGIRhAfKNx7PxZa+m7ir3L/vT0p5BqkMChxYYOW9ZMZs1LrikRdjq6P1WN6hrHirmXeaYV25ZJ9CxwRQJhXoVTXBBuSBMDzZlwM8FhjxmbUp9BxFAHtBrkVB6T5pgIT0SpDyJlLtYUV4xe58rb5HShoTiR10YogxIJe7i8VPAKOrizZSMjJROQjHdZ+5yWdQkqRz0W9KuUwXpO9ixqdkcKtv8xMa0m5xYruqNp2FBzZHyhT+WVk09bjwEuGRRI+tk/NHEKtBe4vkAeJbQ4kOWb75B2FfBqrKAqUvjUUYr5SkpKSn/kA+r4XdHbvxasAAAAABJRU5ErkJggg==","orcid":"https://orcid.org/0009-0007-4530-9772","institution":"University of Canterbury","correspondingAuthor":true,"prefix":"","firstName":"Baptiste","middleName":"","lastName":"Hamon","suffix":""}],"badges":[],"createdAt":"2025-12-19 00:04:22","currentVersionCode":1,"declarations":{"humanSubjects":false,"vertebrateSubjects":false,"conflictsOfInterestStatement":false,"humanSubjectEthicalGuidelines":false,"humanSubjectConsent":false,"humanSubjectClinicalTrial":false,"humanSubjectCaseReport":false,"vertebrateSubjectEthicalGuidelines":false},"doi":"10.21203/rs.3.rs-8399348/v1","doiUrl":"https://doi.org/10.21203/rs.3.rs-8399348/v1","draftVersion":[],"editorialEvents":[],"editorialNote":"","failedWorkflow":false,"files":[{"id":98946277,"identity":"8463be02-bea3-4a1c-9079-a846efdb728e","added_by":"auto","created_at":"2025-12-24 12:26:58","extension":"docx","order_by":0,"title":"","display":"","copyAsset":false,"role":"acdc-reference","size":1451218,"visible":true,"origin":"","legend":"","description":"","filename":"JOSS2025LSAPy.docx","url":"https://assets-eu.researchsquare.com/files/rs-8399348/v1/b9ddb26d81f90a7bd02d393c.docx"},{"id":98946268,"identity":"de7e3f85-483f-473c-83dd-4f2db7056f00","added_by":"auto","created_at":"2025-12-24 12:26:58","extension":"json","order_by":1,"title":"","display":"","copyAsset":false,"role":"acdc-reference","size":342,"visible":true,"origin":"","legend":"","description":"","filename":"rs8399348.json","url":"https://assets-eu.researchsquare.com/files/rs-8399348/v1/d7456adace9d79a05af686c7.json"},{"id":99311042,"identity":"6150dc38-8bf0-4505-8e88-67e9ee017699","added_by":"auto","created_at":"2025-12-31 16:13:46","extension":"xml","order_by":2,"title":"","display":"","copyAsset":false,"role":"acdc-reference","size":32550,"visible":true,"origin":"","legend":"","description":"","filename":"rs83993480enriched.xml","url":"https://assets-eu.researchsquare.com/files/rs-8399348/v1/252d28b51546be0ed6562fcb.xml"},{"id":99311003,"identity":"21c9fcc3-21b3-4240-9b45-2fd7fb8dfd55","added_by":"auto","created_at":"2025-12-31 16:13:42","extension":"jpeg","order_by":3,"title":"","display":"","copyAsset":false,"role":"acdc-reference","size":46652,"visible":true,"origin":"","legend":"","description":"","filename":"groupimage1.jpeg","url":"https://assets-eu.researchsquare.com/files/rs-8399348/v1/2bef0cf0597f44b3d287c460.jpeg"},{"id":98946270,"identity":"d691298d-2172-4a90-b938-4130cc44a535","added_by":"auto","created_at":"2025-12-24 12:26:58","extension":"jpeg","order_by":4,"title":"","display":"","copyAsset":false,"role":"acdc-reference","size":100823,"visible":true,"origin":"","legend":"","description":"","filename":"groupimage2.jpeg","url":"https://assets-eu.researchsquare.com/files/rs-8399348/v1/17c8c0ea0d934c320268b8f8.jpeg"},{"id":99311103,"identity":"e9278ba6-0fa2-4b17-93f1-a8d61a5fb936","added_by":"auto","created_at":"2025-12-31 16:13:53","extension":"png","order_by":5,"title":"","display":"","copyAsset":false,"role":"acdc-reference","size":25388,"visible":true,"origin":"","legend":"","description":"","filename":"Onlinegroupimage1.png","url":"https://assets-eu.researchsquare.com/files/rs-8399348/v1/d190d63b5567c13efca2322d.png"},{"id":98946273,"identity":"374f89bb-c589-492a-82b6-22a44f72857a","added_by":"auto","created_at":"2025-12-24 12:26:58","extension":"png","order_by":6,"title":"","display":"","copyAsset":false,"role":"acdc-reference","size":39991,"visible":true,"origin":"","legend":"","description":"","filename":"Onlinegroupimage2.png","url":"https://assets-eu.researchsquare.com/files/rs-8399348/v1/52953372615a41ff1d379505.png"},{"id":99311487,"identity":"8e000790-b8af-45ec-b28f-983149e9cf69","added_by":"auto","created_at":"2025-12-31 16:15:48","extension":"xml","order_by":7,"title":"","display":"","copyAsset":false,"role":"acdc-reference","size":31688,"visible":true,"origin":"","legend":"","description":"","filename":"rs83993480structuring.xml","url":"https://assets-eu.researchsquare.com/files/rs-8399348/v1/69ae97bd2209882c40348251.xml"},{"id":98946275,"identity":"8a0cb3dd-80ca-44f3-a60e-05181f632f7f","added_by":"auto","created_at":"2025-12-24 12:26:58","extension":"html","order_by":8,"title":"","display":"","copyAsset":false,"role":"acdc-reference","size":35872,"visible":true,"origin":"","legend":"","description":"","filename":"earlyproof.html","url":"https://assets-eu.researchsquare.com/files/rs-8399348/v1/cfdfadc6bf1371cee1245729.html"},{"id":98946267,"identity":"3ce45d08-1ce9-4816-9ecc-e71cae565b5b","added_by":"auto","created_at":"2025-12-24 12:26:58","extension":"png","order_by":1,"title":"Figure 1","display":"","copyAsset":false,"role":"figure","size":215685,"visible":true,"origin":"","legend":"\u003cp\u003e\u003cstrong\u003eOverview of LSAPy’s objects structures and their associated properties and methods.\u003c/strong\u003e *\u003ccode\u003esc\u003c/code\u003e is used as an abbreviation for \u003ccode\u003eSuitabilityCriteria.\u003c/code\u003e\u003c/p\u003e","description":"","filename":"Fig1lsapystructure.png","url":"https://assets-eu.researchsquare.com/files/rs-8399348/v1/8bbd8054413e61bc1e08da98.png"},{"id":98946272,"identity":"91e23a87-5e46-443a-bc21-655182300d4b","added_by":"auto","created_at":"2025-12-24 12:26:58","extension":"png","order_by":2,"title":"Figure 2","display":"","copyAsset":false,"role":"figure","size":762877,"visible":true,"origin":"","legend":"\u003cp\u003e\u003cstrong\u003eWorkflow of the land suitability analysis example. \u003c/strong\u003ePresented are the input indicators associated with the criteria used, the standardisation functions applied and the output suitability. The suitability of each of the criteria is shown, as well as the aggregated suitability of the categories and the final land suitability.\u003c/p\u003e","description":"","filename":"Fig2workflowexample.png","url":"https://assets-eu.researchsquare.com/files/rs-8399348/v1/c83b907f1dab9ca3ad8c5fa5.png"},{"id":99322840,"identity":"a6afc1c5-a481-459b-9865-4e6c16780dc4","added_by":"auto","created_at":"2025-12-31 16:44:21","extension":"pdf","order_by":0,"title":"","display":"","copyAsset":false,"role":"manuscript-pdf","size":1197102,"visible":true,"origin":"","legend":"","description":"","filename":"manuscript.pdf","url":"https://assets-eu.researchsquare.com/files/rs-8399348/v1/f6b8c901-ac0d-4165-a3b5-247c35c8b881.pdf"}],"financialInterests":"The authors declare no competing interests.","formattedTitle":"\u003cp\u003eLSAPy: Land Suitability Analysis in Python\u003c/p\u003e","fulltext":[{"header":"Full Text","content":"\u003ch1\u003eStatement of need\u003c/h1\u003e\n\u003cp\u003eIn the past decades, several software programs have been developed to perform land evaluation or suitability analysis, including ALES (Johnson \u0026amp; Cramb, 1991), Micro-LEIS (De La Rosa et al., 1992, 2004), LEIGIS (Kalogirou, 2002), ALSE (Elsheikh et al., 2013), and general-purpose GIS platforms (e.g., ArcGIS and QGIS) also provide functionalities for this purpose. While each of these tools offers distinct advantages, a limitation that often arises is the software-imposed constraints and the lack of freedom left to users (Asaad et al., 2022; Chen et al., 2022; Elsheikh et al., 2013). These limitations manifest in several ways. Desktop GIS solutions, for example, often present challenges related to operating system dependency, the cost of proprietary software (e.g., ArcGIS), and difficulties in integration with broader analytical frameworks (Chen et al., 2022). Furthermore, many specialised programs (e.g., Micro-LEIS, LEIGIS, ALSE) do not allow modification of the land characteristics used in the analysis (Asaad et al., 2022; Elsheikh et al., 2013). This rigidity is problematic, as the predefined land characteristics may not apply to all crops or may require other parameters. Additionally, some tools (e.g., LEIGIS) support only a limited selection of crops for evaluation (Elsheikh et al., 2013).\u003c/p\u003e\n\u003cp\u003eRecently, two libraries – ALUES (Asaad et al., 2022) and PyLUSAT (Chen et al., 2022) – have been developed to address some of these limitations. ALUES, an R package, supports the evaluation of 56 crops and allows the addition of new ones. While it addresses some of the limitations discussed above, it falls short in others. For instance, it relies on fixed criteria grouped into three categories (i.e., land and soil, water, and temperature) that are unmodifiable (Asaad et al., 2022). PyLUSAT, a Python package, enables land suitability analysis using vector data, offering specific advantages such as bypassing the modifiable areal unit problem (MAUP) and the political relevance of object shape (Chen et al., 2022). Nevertheless, raster data models have been recognised as more appropriate for LSA applications because of their area-oriented structure (Malczewski, 2004). Moreover, raster-based approaches are generally more efficient for data combinations and complex calculations (Carr \u0026amp; Zwick, 2007), particularly when integrating climate data, which is often distributed in netCDF format and best processed using raster routines. Converting such data to a vector format for analysis is technically feasible but suboptimal, leading to increased computational overhead and memory usage. Consequently, raster-based methods are essential for large-scale analyses, such as land suitability assessments using climate projections.\u003c/p\u003e\n\u003cp\u003eBeyond these technical constraints, the lack of user flexibility in existing software introduces further limitations. First, when programs offer a restricted set of functionalities, they hinder the reproducibility of scientific results. For instance, ALSE aggregates criteria suitability using the maximum limitation method (Elsheikh et al., 2013), whereas ALUES provides only minimum, maximum, and average aggregation options. This discrepancy renders the reproduction of cross-software results impossible. Second, tools designed for specific use cases (e.g., agriculture) limit broader adoption and, in the case of free and open-source software (FOSS), may impede community engagement and growth. Finally, rigid frameworks restrict the ability to explore edge cases or out-of-the-box analyses, which are increasingly important in a rapidly changing environment.\u003c/p\u003e\n\u003cp\u003eThe limitations of existing software programs motivated the development of LSAPy (Land Suitability Analysis in Python), a new, highly customizable Python package supporting array-like data, such as raster and netCDF formats. Thanks to its customisation approach, frameworks used in most software programs mentioned above can be implemented in LSAPy.\u003c/p\u003e\n\u003ch1\u003eLand Suitability Analysis Workflow\u003c/h1\u003e\n\u003cp\u003eLSAPy provides two core objects and one module that operate together to perform the land suitability analysis (LSA) according to user-defined frameworks (Figure 1).\u003c/p\u003e\n\u003ch2\u003eStandardize Module\u003c/h2\u003e\n\u003cp\u003elsapy.standardize provides a set of standardization functions used to transform input data (e.g., slope, annual mean temperature, annual total precipitation…) into a standardised scale of suitability values ranging from 0 to 1 (Figure 1). LSAPy includes built-in functions for both discrete and continuous data. For the latter, the package follows a fuzzy-logic approach, implementing sigmoid-like and Gaussian-like membership functions previously used in LSA studies.\u003c/p\u003e\n\u003ch2\u003eSuitability Criteria\u003c/h2\u003e\n\u003cp\u003eThe\u0026nbsp;SuitabilityCriteria\u0026nbsp;defines an individual criteria used in LSA. Its\u0026nbsp;func\u0026nbsp;property refers to a standardization function, while\u0026nbsp;indicator\u0026nbsp;specifies the input data\u0026nbsp;(Figure 1). The\u0026nbsp;weight\u0026nbsp;and\u0026nbsp;category\u0026nbsp;properties\u0026nbsp;allow users to customise how each criteria is aggregated with others in the analysis.\u0026nbsp;is_computed\u0026nbsp;indicates whether the indicator already corresponds to suitability values and does not need further computation. Finally, the\u0026nbsp;compute()\u0026nbsp;method applies the standardization function to the given\u0026nbsp;indicator\u0026nbsp;to calculate the suitability score.\u003c/p\u003e\n\u003ch2\u003eLand Suitability Analysis\u003c/h2\u003e\n\u003cp\u003eLandSuitabilityAnalysis\u0026nbsp;is the top-level class in LSAPy, defining the LSA framework (Figure 1). All criteria for the analysis are stored in the\u0026nbsp;criteria\u0026nbsp;property. The\u0026nbsp;category,\u0026nbsp;criteria_by_category\u0026nbsp;and\u0026nbsp;weight_by_category\u0026nbsp;properties are populated based on defined criteria, with the first one listing all unique categories, and the latter two their associated criteria and weight, respectively. The\u0026nbsp;run()\u0026nbsp;method executes the LSA, with parameters specifying the level of suitability to compute (i.e., criteria, category, or overall land suitability) and the aggregation method to use. Currently, supported aggregation methods include median, mean, weighted mean, geometric mean, weighted geometric mean, and limiting factor.\u003c/p\u003e\n\u003ch2\u003eAdditional Features\u003c/h2\u003e\n\u003cul\u003e\n \u003cli\u003eThe stats\u0026nbsp;module offers functions for computing spatial (e.g., national, regional…) summary statistics of land use suitability.\u003c/li\u003e\n \u003cli\u003eLSAPy’s\u0026nbsp;open_data\u0026nbsp;function provides access to sample datasets, including soil/land data from NZGLID\u0026nbsp;(Hamon, 2025)\u0026nbsp;and climate data from NEX-GDDP-CMIP6\u0026nbsp;(Thrasher et al., 2022)\u0026nbsp;for tutorial and training purposes.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eWorkflow Example\u003c/h2\u003e\n\u003cp\u003eFor this example, a land suitability analysis was performed using the soil and climate data provided in LSAPy, covering the New Zealand territory. Three suitability criteria were defined: slope, annual precipitation excess, and the growing temperature requirement. The first criteria was categorised under \"soilTerrain\", while the latter two were grouped under \"climate\". The indicators associated with each criteria were the slope (in degrees), annual total precipitation (in mm), and annual mean temperature (in °C), respectively, and are presented in Figure 2. It is important to note that the chosen criteria, indicators and standardisation functions are for demonstration purposes only and do not correspond to an actual land suitability analysis for any specific crop. A comprehensive LSA would typically involve a larger number and more complex criteria.\u003c/p\u003e\n\u003cp\u003eThe suitability of each criteria was computed by applying the defined standardisation functions (Figure 2). The criteria suitability were then aggregated: first, the suitability of the \"soilTerrain\" and \"climate\" categories was calculated, and then the overall land suitability was derived by combining the two categories. In this simple example, the arithmetic mean was used for all aggregation steps. The resulting land suitability map is also presented in Figure 2 and allows identifying the most suitable areas based on the defined criteria.\u003c/p\u003e\n\u003ch1\u003eResearch Applications\u003c/h1\u003e\n\u003cp\u003eLSAPy has been used to assess the impact of climate change on apples, cherries, maize and wheat in New Zealand (Hamon et al., 2025a, 2025b) and is the core component of the New Zealand Land Use Suitability Database.\u003c/p\u003e"},{"header":"Declarations","content":"\u003ch2\u003eAcknowledgements\u003c/h2\u003e \u003cp\u003eThe development of LSAPy began as part of a PhD funded by the Food Transition 2050 Joint Postgraduate School.\u003c/p\u003e"},{"header":"References","content":"\u003col\u003e\n\u003cli\u003eAsaad, A.-A. B., Salvacion, A. R., \u0026amp; Yen, B. T. (2022). ALUES: R package for Agricultural Land Use Evaluation System. Journal of Open Source Software, 7(73), 4228. https://doi.org/10.21105/joss.04228\u003c/li\u003e\n\u003cli\u003eCarr, M. H., \u0026amp; Zwick, P. D. (2007). Smart Land-use Analysis: The LUCIS Model Land-use Conflict Identification Strategy. ESRI, Inc.\u003c/li\u003e\n\u003cli\u003eChen, C., Judge, J., \u0026amp; Hulse, D. (2022). PyLUSAT: An open-source Python toolkit for GIS-based land use suitability analysis. Environmental Modelling \u0026amp; Software, 151, 105362. https://doi.org/10.1016/j.envsoft.2022.105362\u003c/li\u003e\n\u003cli\u003eDe La Rosa, D., Mayol, F., Diaz-Pereira, E., Fernandez, M., \u0026amp; De La Rosa, D. (2004). A land evaluation decision support system (MicroLEIS DSS) for agricultural soil protection. Environmental Modelling \u0026amp; Software, 19(10), 929\u0026ndash;942. https://doi.org/10.1016/j.envsoft.2003.10.006\u003c/li\u003e\n\u003cli\u003eDe La Rosa, D., Moreno, J. A., Garcia, L. V., \u0026amp; Almorza, J. (1992). MicroLEIS: A microcomputer‐based Mediterranean land evaluation information system. Soil Use and Management, 8(2), 89\u0026ndash;96. https://doi.org/10.1111/j.1475-2743.1992.tb00900.x\u003c/li\u003e\n\u003cli\u003eElsheikh, R., Mohamed Shariff, A. R. B., Amiri, F., Ahmad, N. B., Balasundram, S. K., \u0026amp; Soom, M. A. M. (2013). Agriculture Land Suitability Evaluator (ALSE): A decision and planning support tool for tropical and subtropical crops. Computers and Electronics in Agriculture, 93, 98\u0026ndash;110. https://doi.org/10.1016/j.compag.2013.02.003\u003c/li\u003e\n\u003cli\u003eHamon, B. (2025). New Zealand Gridded Land Information Dataset (NZGLID) (Version v1.1) [Dataset]. Zenodo. https://doi.org/10.5281/ZENODO.16249350\u003c/li\u003e\n\u003cli\u003eHamon, B., Qu\u0026eacute;nol, H., Vannier, C., \u0026amp; Cochrane, T. A. (2025a). Bridging the Gaps in the Future Agroclimatic Suitability of Crops in New Zealand. EGU General Assembly 2025, Vienna, Austria, 27 Apr\u0026ndash;2 May 2025, EGU25-1157. https://doi.org/10.5194/egusphere-egu25-1157\u003c/li\u003e\n\u003cli\u003eHamon, B., Qu\u0026eacute;nol, H., Vannier, C., \u0026amp; Cochrane, T. A. (2025b). Regional Impacts of Climate Change on New Zealand\u0026rsquo;s Agriculture: Land Suitability Analysis of Key Crops. [Manuscript Submitted for Publication].\u003c/li\u003e\n\u003cli\u003eJohnson, A. K. L., \u0026amp; Cramb, R. A. (1991). Development of a simulation based land evaluation system using crop modelling, expert systems and risk analysis. Soil Use and Management, 7(4), 239\u0026ndash;246. https://doi.org/10.1111/j.1475-2743.1991.tb00881.x\u003c/li\u003e\n\u003cli\u003eKalogirou, S. (2002). Expert systems and GIS: An application of land suitability evaluation. Computers, Environment and Urban Systems, 26(2\u0026ndash;3), 89\u0026ndash;112. https://doi.org/10.1016/S0198-9715(01)00031-X\u003c/li\u003e\n\u003cli\u003eMalczewski, J. (2004). GIS-based land-use suitability analysis: A critical overview. Progress in Planning, 62(1), 3\u0026ndash;65. https://doi.org/10.1016/j.progress.2003.09.002\u003c/li\u003e\n\u003cli\u003eThrasher, B., Wang, W., Michaelis, A., Melton, F., Lee, T., \u0026amp; Nemani, R. (2022). NASA Global Daily Downscaled Projections, CMIP6. Scientific Data, 9(1), 262. https://doi.org/10.1038/s41597-022-01393-4\u003c/li\u003e\n\u003c/ol\u003e"}],"fulltextSource":"","fullText":"","funders":[],"hasAdminPriorityOnWorkflow":false,"hasManuscriptDocX":true,"hasOptedInToPreprint":true,"hasPassedJournalQc":"","hasAnyPriority":true,"hideJournal":true,"highlight":"","institution":"University of Canterbury","isAcceptedByJournal":false,"isAuthorSuppliedPdf":false,"isDeskRejected":"","isHiddenFromSearch":false,"isInQc":false,"isInWorkflow":false,"isPdf":false,"isPdfUpToDate":true,"isWithdrawnOrRetracted":false,"journal":{"display":true,"email":"
[email protected]","identity":"researchsquare","isNatureJournal":false,"hasQc":true,"allowDirectSubmit":true,"externalIdentity":"","sideBox":"","snPcode":"","submissionUrl":"/submission","title":"Research Square","twitterHandle":"researchsquare","acdcEnabled":true,"dfaEnabled":false,"editorialSystem":"","reportingPortfolio":"","inReviewEnabled":false,"inReviewRevisionsEnabled":true},"keywords":"","lastPublishedDoi":"10.21203/rs.3.rs-8399348/v1","lastPublishedDoiUrl":"https://doi.org/10.21203/rs.3.rs-8399348/v1","license":{"name":"CC BY 4.0","url":"https://creativecommons.org/licenses/by/4.0/"},"manuscriptAbstract":"\u003cp\u003eLSAPy is a highly customizable Python library designed to streamline and enhance Land Suitability Analysis (LSA) workflows. The package implements a fuzzy-logic approach and provides two core objects – SuitabilityCriteria and LandSuitabilityAnalysis – and one module (lsapy.standardize) that work together to deliver a flexible and user-defined LSA framework. By relying on xarray objects for computation (Hoyer and Hamman, 2017), LSAPy seamlessly integrates with the broader Python ecosystem, such as dask for efficient parallel processing and matplotlib for data visualisation. Its modular design addresses some limitations of existing LSA tools by offering greater flexibility, reproducibility, and scalability for research and practical applications.\u003c/p\u003e","manuscriptTitle":"LSAPy: Land Suitability Analysis in Python","msid":"","msnumber":"","nonDraftVersions":[{"code":1,"date":"2025-12-24 12:26:54","doi":"10.21203/rs.3.rs-8399348/v1","editorialEvents":[{"type":"communityComments","content":0}],"status":"published","journal":{"display":true,"email":"
[email protected]","identity":"researchsquare","isNatureJournal":false,"hasQc":true,"allowDirectSubmit":true,"externalIdentity":"","sideBox":"","snPcode":"","submissionUrl":"/submission","title":"Research Square","twitterHandle":"researchsquare","acdcEnabled":true,"dfaEnabled":false,"editorialSystem":"","reportingPortfolio":"","inReviewEnabled":false,"inReviewRevisionsEnabled":true}}],"origin":"","ownerIdentity":"4fd4735b-83ee-49ca-b8c3-c8e5c58bb7f0","owner":[],"postedDate":"December 24th, 2025","published":true,"recentEditorialEvents":[],"rejectedJournal":[],"revision":"","amendment":"","status":"posted","subjectAreas":[{"id":60029473,"name":"Software Engineering"}],"tags":[],"updatedAt":"2025-12-24T12:26:54+00:00","versionOfRecord":[],"versionCreatedAt":"2025-12-24 12:26:54","video":"","vorDoi":"","vorDoiUrl":"","workflowStages":[]},"version":"v1","identity":"rs-8399348","journalConfig":"researchsquare"},"__N_SSP":true},"page":"/article/[identity]/[[...version]]","query":{"redirect":"/article/rs-8399348","identity":"rs-8399348","version":["v1"]},"buildId":"8U1c8b4HqxoKbykW_rLl7","isFallback":false,"isExperimentalCompile":false,"dynamicIds":[84888],"gssp":true,"scriptLoader":[]}
Text is read by the "Ask this paper" AI Q&A widget below.
Extraction quality varies by source — PMC NXML preserves structure
cleanly, OA-HTML may include some navigation residue, and OA-PDF can
have broken hyphenation. The publisher copy
(via DOI)
is the canonical version.