Spatiotemporal analysis¶
-
class
pylandstats.
SpatioTemporalAnalysis
(landscapes, dates=None)[source]¶ -
__init__
(landscapes, dates=None)[source]¶ Parameters: - landscapes (list-like) – A list-like of Landscape objects or of strings/file objects/ pathlib.Path objects so that each is passed as the landscape argument of Landscape.__init__
- dates (list-like, optional) – A list-like of ints or strings that label the date of each snapshot of landscapes (for DataFrame indices and plot labels)
-
compute_class_metrics_df
(metrics=None, classes=None, metrics_kws=None)[source]¶ Computes the data frame of class-level metrics, which is multi-indexed by the class and date.
Parameters: - metrics (list-like, optional) – A list-like of strings with the names of the metrics that should be computed in the context of this analysis case
- classes (list-like, optional) – A list-like of ints or strings with the class values that should be considered in the context of this analysis case
- metrics_kws (dict, optional) – Dictionary mapping the keyword arguments (values) that should be passed to each metric method (key), e.g., to exclude the boundary from the computation of total_edge, metric_kws should map the string ‘total_edge’ (method name) to {‘count_boundary’: False}. The default empty dictionary will compute each metric according to FRAGSTATS defaults.
Returns: df – Dataframe with the values computed for each class, date (multi-index) and metric (columns)
Return type: pd.DataFrame
-
compute_landscape_metrics_df
(metrics=None, metrics_kws=None)[source]¶ Computes the data frame of landscape-level metrics, which is indexed by the date.
Parameters: - metrics (list-like, optional) – A list-like of strings with the names of the metrics that should be computed. If None, all the implemented landscape-level metrics will be computed.
- metrics_kws (dict, optional) – Dictionary mapping the keyword arguments (values) that should be passed to each metric method (key), e.g., to exclude the boundary from the computation of total_edge, metric_kws should map the string ‘total_edge’ (method name) to {‘count_boundary’: False}. The default empty dictionary will compute each metric according to FRAGSTATS defaults.
Returns: df – Dataframe with the values computed at the landscape level for each date (index) and metric (columns)
Return type: pd.DataFrame
-
plot_landscapes
(cmap=None, legend=True, subplots_kws=None, show_kws=None, subplots_adjust_kws=None)¶ Plots each landscape snapshot in a dedicated matplotlib axis by means of the Landscape.plot_landscape method of each instance
Parameters: - cmap (str or ~matplotlib.colors.Colormap, optional) – A Colormap instance
- legend (bool, optional) – If
True
, display the legend of the land use/cover color codes - subplots_kws (dict, default None) – Keyword arguments to be passed to plt.subplots
- show_kws (dict, default Nonte) – Keyword arguments to be passed to rasterio.plot.show
- subplots_adjust_kws (dict, default None) – Keyword arguments to be passed to plt.subplots_adjust
Returns: fig – The figure with its corresponding plots drawn into its axes
Return type: matplotlib.figure.Figure
-
plot_metric
(metric, class_val=None, ax=None, metric_legend=True, metric_label=None, fmt='--o', plot_kws=None, subplots_kws=None, metric_kws=None)¶ Parameters: - metric (str) – A string indicating the name of the metric to plot
- class_val (int, optional) – If provided, the metric will be plotted at the level of the corresponding class, otherwise it will be plotted at the landscape level
- ax (axis object, optional) – Plot in given axis; if None creates a new figure
- metric_legend (bool, default True) – Whether the metric label should be displayed within the plot (as label of the y-axis)
- metric_label (str, optional) – Label of the y-axis to be displayed if metric_legend is True. If the provided value is None, the label will be taken from the settings module
- fmt (str, default '--o') – A format string for plt.plot
- plot_kws (dict, default None) – Keyword arguments to be passed to plt.plot
- subplots_kws (dict, default None) – Keyword arguments to be passed to plt.subplots, only if no axis is given (through the ax argument)
- metric_kws (dict, default None) – Keyword arguments to be passed to the method that computes the metric (specified in the metric argument) for each landscape
Returns: ax – Returns the Axes object with the plot drawn onto it
Return type: axis object
-