{"library":"rioxarray","title":"Rioxarray","description":"Rioxarray is an open-source Python library that extends xarray with geospatial capabilities, powered by rasterio. It provides a `.rio` accessor for xarray DataArrays and Datasets, enabling easy manipulation, reprojecting, and analysis of geospatial raster data. It is actively maintained with regular releases, typically following `xarray` and `rasterio` updates.","language":"python","status":"active","last_verified":"Fri May 15","install":{"commands":["pip install rioxarray","pip install 'rioxarray[tools]' # For CLI tools, requires GDAL"],"cli":null},"imports":["import rioxarray"],"auth":{"required":false,"env_vars":[]},"quickstart":{"code":"import xarray as xr\nimport rioxarray # Enables the .rio accessor\nimport numpy as np\n\n# Create a dummy DataArray for demonstration\n# In a real scenario, you'd typically open a GeoTIFF like this:\n# da = xr.open_dataarray(\"path/to/your/file.tif\", engine=\"rasterio\")\n\n# Dummy data: a 2x2 grid representing a small geographic area\ndata = np.array([[10.1, 20.2], [30.3, 40.4]], dtype=np.float32)\ncoords = {\n    \"y\": [45.5, 45.0],  # Example latitude (y-coordinate, usually decreasing)\n    \"x\": [-120.0, -119.5], # Example longitude (x-coordinate, usually increasing)\n}\nda = xr.DataArray(data, coords=coords, dims=(\"y\", \"x\"), name=\"temperature\")\n\n# Assign geospatial metadata using the .rio accessor\n# These properties are typically inferred automatically when opening a geospatial file.\nda = da.rio.write_crs(\"EPSG:4326\") # WGS84 Geographic CRS\nda = da.rio.set_spatial_dims(x_dim=\"x\", y_dim=\"y\") # Explicitly set spatial dimensions\n\nprint(f\"Original CRS: {da.rio.crs}\")\nprint(f\"Original Bounds: {da.rio.bounds()}\")\nprint(f\"Original Resolution: {da.rio.resolution()}\")\nprint(f\"Original Width: {da.rio.width}\")\nprint(f\"Original Height: {da.rio.height}\")\n\n# Example of a common operation: Reproject to a different CRS\n# Note: This operation requires 'pyproj' to be installed. Some systems \n# might also need GDAL for full functionality and performance.\n# try:\n#     # Reproject to Web Mercator (EPSG:3857)\n#     reprojected_da = da.rio.reproject(\"EPSG:3857\")\n#     print(f\"\\nReprojected CRS: {reprojected_da.rio.crs}\")\n#     print(f\"Reprojected Bounds: {reprojected_da.rio.bounds()}\")\n#     print(f\"Reprojected Resolution: {reprojected_da.rio.resolution()}\")\n# except ImportError:\n#     print(\"\\nSkipping reprojection: 'pyproj' not installed. Install with 'pip install pyproj'.\")\n# except Exception as e:\n#     print(f\"\\nCould not reproject: {e}\")\n","lang":"python","description":"Demonstrates how to create a simple xarray DataArray, assign geospatial metadata using the `.rio` accessor, and retrieve basic spatial properties like CRS, bounds, and resolution. It also includes a commented-out example of reprojection, a common geospatial operation.","tag":null,"tag_description":null,"last_tested":null,"results":[]},"compatibility":{"tag":null,"tag_description":null,"last_tested":"2026-05-15","installed_version":"0.15.0","pypi_latest":"0.22.0","is_stale":true,"summary":{"python_range":"3.10–3.9","success_rate":50,"avg_install_s":10.6,"avg_import_s":null,"wheel_type":"wheel"},"results":[{"runtime":"python:3.10-alpine","python_version":"3.10","os_libc":"alpine (musl)","variant":"tools","exit_code":1,"wheel_type":null,"failure_reason":"build_error","import_side_effects":null,"install_time_s":null,"import_time_s":null,"mem_mb":null,"disk_size":null},{"runtime":"python:3.10-alpine","python_version":"3.10","os_libc":"alpine (musl)","variant":"rioxarray","exit_code":1,"wheel_type":null,"failure_reason":"build_error","import_side_effects":null,"install_time_s":null,"import_time_s":null,"mem_mb":null,"disk_size":null},{"runtime":"python:3.10-slim","python_version":"3.10","os_libc":"slim (glibc)","variant":"tools","exit_code":0,"wheel_type":null,"failure_reason":null,"import_side_effects":null,"install_time_s":null,"import_time_s":null,"mem_mb":null,"disk_size":null},{"runtime":"python:3.10-slim","python_version":"3.10","os_libc":"slim (glibc)","variant":"rioxarray","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"broken","install_time_s":10.2,"import_time_s":null,"mem_mb":null,"disk_size":"308M"},{"runtime":"python:3.11-alpine","python_version":"3.11","os_libc":"alpine (musl)","variant":"tools","exit_code":1,"wheel_type":null,"failure_reason":"build_error","import_side_effects":null,"install_time_s":null,"import_time_s":null,"mem_mb":null,"disk_size":null},{"runtime":"python:3.11-alpine","python_version":"3.11","os_libc":"alpine (musl)","variant":"rioxarray","exit_code":1,"wheel_type":null,"failure_reason":"build_error","import_side_effects":null,"install_time_s":null,"import_time_s":null,"mem_mb":null,"disk_size":null},{"runtime":"python:3.11-slim","python_version":"3.11","os_libc":"slim (glibc)","variant":"tools","exit_code":0,"wheel_type":null,"failure_reason":null,"import_side_effects":null,"install_time_s":null,"import_time_s":null,"mem_mb":null,"disk_size":null},{"runtime":"python:3.11-slim","python_version":"3.11","os_libc":"slim (glibc)","variant":"rioxarray","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"broken","install_time_s":10,"import_time_s":null,"mem_mb":null,"disk_size":"329M"},{"runtime":"python:3.12-alpine","python_version":"3.12","os_libc":"alpine (musl)","variant":"tools","exit_code":1,"wheel_type":null,"failure_reason":"build_error","import_side_effects":null,"install_time_s":null,"import_time_s":null,"mem_mb":null,"disk_size":null},{"runtime":"python:3.12-alpine","python_version":"3.12","os_libc":"alpine (musl)","variant":"rioxarray","exit_code":1,"wheel_type":null,"failure_reason":"build_error","import_side_effects":null,"install_time_s":null,"import_time_s":null,"mem_mb":null,"disk_size":null},{"runtime":"python:3.12-slim","python_version":"3.12","os_libc":"slim (glibc)","variant":"tools","exit_code":0,"wheel_type":null,"failure_reason":null,"import_side_effects":null,"install_time_s":null,"import_time_s":null,"mem_mb":null,"disk_size":null},{"runtime":"python:3.12-slim","python_version":"3.12","os_libc":"slim (glibc)","variant":"rioxarray","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"broken","install_time_s":10.5,"import_time_s":null,"mem_mb":null,"disk_size":"318M"},{"runtime":"python:3.13-alpine","python_version":"3.13","os_libc":"alpine (musl)","variant":"tools","exit_code":1,"wheel_type":null,"failure_reason":"build_error","import_side_effects":null,"install_time_s":null,"import_time_s":null,"mem_mb":null,"disk_size":null},{"runtime":"python:3.13-alpine","python_version":"3.13","os_libc":"alpine (musl)","variant":"rioxarray","exit_code":1,"wheel_type":null,"failure_reason":"build_error","import_side_effects":null,"install_time_s":null,"import_time_s":null,"mem_mb":null,"disk_size":null},{"runtime":"python:3.13-slim","python_version":"3.13","os_libc":"slim (glibc)","variant":"tools","exit_code":0,"wheel_type":null,"failure_reason":null,"import_side_effects":null,"install_time_s":null,"import_time_s":null,"mem_mb":null,"disk_size":null},{"runtime":"python:3.13-slim","python_version":"3.13","os_libc":"slim (glibc)","variant":"rioxarray","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"broken","install_time_s":10.2,"import_time_s":null,"mem_mb":null,"disk_size":"316M"},{"runtime":"python:3.9-alpine","python_version":"3.9","os_libc":"alpine (musl)","variant":"tools","exit_code":1,"wheel_type":null,"failure_reason":"build_error","import_side_effects":null,"install_time_s":null,"import_time_s":null,"mem_mb":null,"disk_size":null},{"runtime":"python:3.9-alpine","python_version":"3.9","os_libc":"alpine (musl)","variant":"rioxarray","exit_code":1,"wheel_type":null,"failure_reason":"build_error","import_side_effects":null,"install_time_s":null,"import_time_s":null,"mem_mb":null,"disk_size":null},{"runtime":"python:3.9-slim","python_version":"3.9","os_libc":"slim (glibc)","variant":"tools","exit_code":0,"wheel_type":null,"failure_reason":null,"import_side_effects":null,"install_time_s":null,"import_time_s":null,"mem_mb":null,"disk_size":null},{"runtime":"python:3.9-slim","python_version":"3.9","os_libc":"slim (glibc)","variant":"rioxarray","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"broken","install_time_s":12.2,"import_time_s":null,"mem_mb":null,"disk_size":"272M"}]}}