{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "\n# Windrose and windbarb timeseries plot\n\nThis is an example of how to display wind rose and barb timeseries\nfrom multiple days worth of sounding data.\n" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "import numpy as np\nfrom arm_test_data import DATASETS\nfrom matplotlib import pyplot as plt\n\nimport act\n\n# Read in sonde files\ntwp_sonde_wildcard_list = [\n 'twpsondewnpnC3.b1.20060119.050300.custom.cdf',\n 'twpsondewnpnC3.b1.20060119.112000.custom.cdf',\n 'twpsondewnpnC3.b1.20060119.163300.custom.cdf',\n 'twpsondewnpnC3.b1.20060119.231600.custom.cdf',\n 'twpsondewnpnC3.b1.20060120.043800.custom.cdf',\n 'twpsondewnpnC3.b1.20060120.111900.custom.cdf',\n 'twpsondewnpnC3.b1.20060120.170800.custom.cdf',\n 'twpsondewnpnC3.b1.20060120.231500.custom.cdf',\n 'twpsondewnpnC3.b1.20060121.051500.custom.cdf',\n 'twpsondewnpnC3.b1.20060121.111600.custom.cdf',\n 'twpsondewnpnC3.b1.20060121.171600.custom.cdf',\n 'twpsondewnpnC3.b1.20060121.231600.custom.cdf',\n 'twpsondewnpnC3.b1.20060122.052600.custom.cdf',\n 'twpsondewnpnC3.b1.20060122.111500.custom.cdf',\n 'twpsondewnpnC3.b1.20060122.171800.custom.cdf',\n 'twpsondewnpnC3.b1.20060122.232600.custom.cdf',\n 'twpsondewnpnC3.b1.20060123.052500.custom.cdf',\n 'twpsondewnpnC3.b1.20060123.111700.custom.cdf',\n 'twpsondewnpnC3.b1.20060123.171600.custom.cdf',\n 'twpsondewnpnC3.b1.20060123.231500.custom.cdf',\n 'twpsondewnpnC3.b1.20060124.051500.custom.cdf',\n 'twpsondewnpnC3.b1.20060124.111800.custom.cdf',\n 'twpsondewnpnC3.b1.20060124.171700.custom.cdf',\n 'twpsondewnpnC3.b1.20060124.231500.custom.cdf',\n]\nsonde_filenames = [DATASETS.fetch(file) for file in twp_sonde_wildcard_list]\nsonde_ds = act.io.arm.read_arm_netcdf(sonde_filenames)\n\nWindDisplay = act.plotting.WindRoseDisplay(sonde_ds, figsize=(8, 10), subplot_shape=(2,))\nWindDisplay.plot(\n 'deg', 'wspd', spd_bins=np.linspace(0, 25, 5), num_dirs=30, tick_interval=2, subplot_index=(0,)\n)\n\nBarbDisplay = act.plotting.TimeSeriesDisplay({'sonde_darwin': sonde_ds}, figsize=(10, 5))\nWindDisplay.put_display_in_subplot(BarbDisplay, subplot_index=(1,))\nBarbDisplay.plot_time_height_xsection_from_1d_data(\n 'rh', 'pres', cmap='coolwarm_r', vmin=0, vmax=100, num_time_periods=25\n)\n\nBarbDisplay.plot_barbs_from_spd_dir('wspd', 'deg', 'pres', num_barbs_x=20)\nplt.show()" ] } ], "metadata": { "kernelspec": { "display_name": "Python 3", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.14.3" } }, "nbformat": 4, "nbformat_minor": 0 }