Skip to content

Instantly share code, notes, and snippets.

@AlexHilson
Last active February 15, 2017 19:36
Show Gist options
  • Save AlexHilson/42ee5f55962c49c1c6f9a99bbb250073 to your computer and use it in GitHub Desktop.
Save AlexHilson/42ee5f55962c49c1c6f9a99bbb250073 to your computer and use it in GitHub Desktop.
Working with Dask + Iris
Display the source blob
Display the rendered blob
Raw
{
"cells": [
{
"cell_type": "code",
"execution_count": 1,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"import iris\n",
"import dask"
]
},
{
"cell_type": "code",
"execution_count": 2,
"metadata": {
"collapsed": false
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"eastward_wind / (m s-1) (time: 31; latitude: 160; longitude: 320)\n",
" Dimension coordinates:\n",
" time x - -\n",
" latitude - x -\n",
" longitude - - x\n",
" Scalar coordinates:\n",
" height: 10.0 m\n",
" Attributes:\n",
" Conventions: CF-1.0\n",
" cmor_version: 0.96\n",
" comment: This run was initiated from the end of the corresponding 20C3M run of CCSR/NIES/FRCGC...\n",
" contact: Seita Emori (emori@nies.go.jp)\n",
" experiment_id: 720 ppm stabilization experiment (SRES A1B)\n",
" history: At 15:14:34 on 01/13/2005: CMOR altered the data in the following ways:...\n",
" institution: CCSR/NIES/FRCGC (Center for Climate System Research, Tokyo, Japan / National...\n",
" original_name: 10m zonal wind\n",
" original_units: m/s\n",
" project_id: IPCC Fourth Assessment\n",
" realization: 1\n",
" references: K-1 Coupled GCM Description (K-1 Technical Report No.1) in preparation\n",
" source: MIROC3.2 (2004): atmosphere: AGCM (AGCM5.7b, T106 L56); ocean & sea ice:...\n",
" table_id: Table A2 (17 November 2004)\n",
" title: CCSR/NIES/FRCGC model output prepared for IPCC Fourth Assessment 720 ppm...\n",
" Cell methods:\n",
" mean: time (6 minutes)\n"
]
},
{
"name": "stderr",
"output_type": "stream",
"text": [
"/vagrant/iris/lib/iris/fileformats/cf.py:1143: IrisDeprecation: NetCDF default loading behaviour currently does not expose variables which define reference surfaces for dimensionless vertical coordinates as independent Cubes. This behaviour is deprecated in favour of automatic promotion to Cubes. To switch to the new behaviour, set iris.FUTURE.netcdf_promote to True.\n",
" warn_deprecated(msg)\n",
"/vagrant/iris/lib/iris/fileformats/cf.py:1143: IrisDeprecation: NetCDF default loading behaviour currently does not expose variables which define reference surfaces for dimensionless vertical coordinates as independent Cubes. This behaviour is deprecated in favour of automatic promotion to Cubes. To switch to the new behaviour, set iris.FUTURE.netcdf_promote to True.\n",
" warn_deprecated(msg)\n"
]
}
],
"source": [
"in_f = '/vagrant/iris-test-data/test_data/NetCDF/global/xyt/SMALL_hires_wind_u_for_ipcc4.nc'\n",
"\n",
"cube1 = iris.load_cube(in_f)\n",
"cube2 = iris.load_cube(in_f)\n",
"\n",
"print(cube1)"
]
},
{
"cell_type": "code",
"execution_count": 24,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/plain": [
"dask.array<array-0..., shape=(31, 160, 320), dtype=float32, chunksize=(31, 160, 320)>"
]
},
"execution_count": 24,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"cube1.lazy_data()"
]
},
{
"cell_type": "code",
"execution_count": 25,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/plain": [
"{('array-01abdb1457d0a284d5ac800ed84dd81c',\n",
" 0,\n",
" 0,\n",
" 0): (<function dask.array.core.getarray>, 'array-original-01abdb1457d0a284d5ac800ed84dd81c', (slice(0, 31, None),\n",
" slice(0, 160, None),\n",
" slice(0, 320, None))),\n",
" 'array-original-01abdb1457d0a284d5ac800ed84dd81c': <NetCDFDataProxy shape=(31, 160, 320) dtype=dtype('float32') path='/vagrant/iris-test-data/test_data/NetCDF/global/xyt/SMALL_hires_wind_u_for_ipcc4.nc' variable_name='uas'>}"
]
},
"execution_count": 25,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"cube1.lazy_data().dask"
]
},
{
"cell_type": "code",
"execution_count": 26,
"metadata": {
"collapsed": false
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Dask Key: array-original-01abdb1457d0a284d5ac800ed84dd81c\n",
"\n",
"Proxy: <NetCDFDataProxy shape=(31, 160, 320) dtype=dtype('float32') path='/vagrant/iris-test-data/test_data/NetCDF/global/xyt/SMALL_hires_wind_u_for_ipcc4.nc' variable_name='uas'>\n",
"\n",
"Fill Value: 1.0000000200408773e+20\n",
"\n"
]
}
],
"source": [
"def find_original_keys(graph):\n",
" return list(filter(lambda x: 'original' in x, graph))\n",
"\n",
"dask_graph = cube1.lazy_data().dask\n",
"\n",
"original_key = find_original_keys(graph)[0]\n",
"\n",
"\n",
"print('Dask Key: {}\\n'.format(original_key))\n",
"print('Proxy: {}\\n'.format(graph[original_key]))\n",
"print('Fill Value: {}\\n'.format(graph[original_key].fill_value))"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"To visualise dask graphs you need the graphviz library installed, e.g.\n",
"\n",
"- pip install graphviz\n",
"- sudo apt-get install -y graphviz"
]
},
{
"cell_type": "code",
"execution_count": 7,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"image/png": "iVBORw0KGgoAAAANSUhEUgAAANUAAAFSCAYAAABlgppXAAAABmJLR0QA/wD/AP+gvaeTAAAgAElE\nQVR4nO3deVQUZ7oG8KcaaFkahEBQEBU0RqMs3hgjIA6igBCMSxxBjNuocYlevVFnjJ5zz80kE01m\nMuaazEzcDUEj6KATYwgKrYYlBDXGFTcWCQoqICr7+t4/HPqy041FVzW8v3P6HKmuqu/pph9qsbtL\nICICY0w0CqkDMNbdcKkYExmXijGRGTefUFlZidjYWNTV1UmRhzGDMnr0aDg7OzedSM3ExMQQAL7x\njW9a3GbNmtW8QtRiS1VbWwsA4JOCjLUvNDS01T06PqZiTGRcKsZExqViTGRcKsZExqViTGRcKsZE\nxqViTGRcKsZExqViTGRcKsZExqViTGRcKsZExqViTGRdUqqzZ8/Cz89P87MgCF0xjMFxdHTEjBkz\nND+Hh4ejd+/e7X52LT4+Hn5+frCysoKVlRUmTJiAhISEVucV63nWZUxDXr+fnx/Onj0r2rgNRC/V\nrl27EBgYiNWrV4u9aoOWmZmJ/Px8jBs3TjPthx9+gI+PD4yMjFpdJiIiAoGBgXBzc0NWVhaysrLg\n6uqKwMBA7Nu3r0tydvWYclr/qlWrEBAQgJ07dz7zuE00/4BVdHQ0tTJZK7GxsSQIAkVFRTWZ3tn1\ndSd79+4lAHTu3DkiIrp58yYBoI8//rjV+fPy8sjCwoK8vLyovr5eM72+vp48PT3J0tKS7t2712SZ\nZ32eOzOmoa9/3759JAgCxcbG6jzezJkzaebMmS2mi7alqq6uxtKlS+Ht7Y2wsDCxVtttJCUlwdLS\nEiNHjgTwdCsFAL6+vq3Ov3v3bpSVlWHhwoVNdusEQcDChQtRUlKCPXv2iJqxq8eU4/rffPNNjBkz\nBsuWLUNNTU2nx25MtFLFxMQgNzcXs2fPFmuVBs/U1BSCIEAQBOzZswclJSUwNjaGIAh46623AACe\nnp6aeRprOAYYM2ZMi/U2TDtx4oSoebt6TLmuf/bs2fj1118RExPT6bEbE61UR48eBQC88sorLe6j\nVj6an5CQgClTpsDGxgampqZ4+eWXERUV1WK+hhecIAjIzMzEG2+8ARsbmyYvRG3m0XbMxutquDWe\nx9nZudUStKayshJEhMuXLwN4erxJRKirq4O5uTkWLFgAItLcGrt27RoAoH///i3WO2DAAADA9evX\nm0xv7XnWRWfG7A7rHz16NID/fw0/s+b7g509pho6dCgB0HqfGABNmzaNCgoKKCcnhwICAggAxcXF\ntTovAAoICKCUlBQqLy+n2NjYJjm1nUebMRMSEggAOTg4UHV1dZP7du7cSSEhIbo8NRQZGUkA6Oef\nfyYiovT0dAJAW7dubXMZpVJJAKimpqbFfTU1NQSAevXqpVOOjnT1mHJdf15eHgGgYcOG6TReW8dU\nopVKpVIRAKqsrNRqfgCUnZ2t+fnatWsEgMaNG9fqvADo1KlT7a5Pm3m0HdPDw4MAUERERJPpbm5u\nFB8f3+YYrVm7di2ZmJhQVVUVERHt37+fAFBiYmKby3Cp9Lf+iooKAkCWlpY6jdflJyrKy8sBAEql\nUqv5iajJ96UNGTIEAJCent7mMq+++mqH621vHl3GfOeddwAAn376qWbayZMnUV9fD39/f8201nYX\nm7tw4QKGDx+ueW5++eUXCIIADw+PNrNaW1sDAEpLS1vc1zDNxsamzeU7o6vHlOv6G34vDa/hZyVa\nqczNzQE8PQvYkUePHmHjxo146aWXYGlpCUEQYGz89NvSioqKOhxDmxzPOmZ4eDgcHBxw4cIFnDx5\nEgCwdevWFv//Ro2OiajRsVHjkqnValy8eFHz8yeffAIiQu/evSEIAuzs7FqM/9JLLwEAcnNzW9z3\n66+/AgCGDRvW4fOhi64eU67rb3jNavP60oZoperXrx+Apy/ejoSGhmLz5s0ICwtDTk5OqwfqYtN1\nTKVSiZUrVwIAtmzZgqysLKSmpmLOnDlajdew/oaDX7VaDSJCRkYGAGDTpk2aeQoLC1ss37A1TEtL\na3HfmTNnAACBgYFaZdFWV48p1/UXFxcD+P/X8DNrvj/Y2WOqWbNmEQBKS0vrcF5zc3MCQE+ePNFM\nq6ys1BwXNdfWdF3m0XVMIqKioiIyNzcnQRAoJCSENmzY0NFDa2H9+vVkbGxMZWVlRES0e/duAkDJ\nycntLnf37l2ysLAgb2/vFvd5e3uTSqWi/Px8nfNIOaZc15+amtrmt822p8tPVDQcfP/973/vcN5J\nkyYRANqwYQMVFxdTUVERrVmzpktLpeuYDZYvX04AyNjYmO7cudPhY2vOx8eHRo8erfl53rx5ZGZm\npjlp0Z6Gd2GsXr2aCgoKqKCggFatWkWCINBXX33V4fLV1dUEgOzs7LTOq8uYhr7+Bp999hkBoK+/\n/lrrcYj0UKqqqipycnIiHx+fDue9f/8+zZ07l+zt7UmpVJKrq6tm3OYv8sbTOipde/PoMmZjN2/e\nJIVCofNfMaKnz4mpqSm98847mmkDBw6k8ePHa72O48ePk6+vL6lUKlKpVDR+/Hitzz5mZGQQAJo4\ncaJOubUd09DX38DT05OcnJy0+kPXWJeXiojo2LFjrb73z5DV1dWRg4MDpaamSh1FZ3/6058IAB08\neJDX34aG9/4dO3ZM52X1Uioiou3bt5O1tTUdOXKk0+uQk6NHj9KYMWOkjqGzxMREMjU1pfDwcF5/\nGw4fPkxWVla0bdu2Ti2vt1IREaWlpZGvr+8zrUNKACg1NZUePnxIo0aNom+++UbqSDpbsGABrV27\nVuddmp6yfiIiX19frU6staWtUglETc8rHzx4EGFhYT36UjoN/4Fra2uLlStX4r333pM2EJOl0NBQ\nAE8701iL61MxvjYXezb8HRWMiYxLxZjIuFSMiYxLxZjIuFSMiYxLxZjIuFSMiYxLxZjIuFSMiYxL\nxZjIuFSMiYxLxZjIuFSMiazNd6kfOnRInzlYBwoKCmBnZ8fX+pKR3NzcVr9iukWpHBwcYGxsrPms\nCGOsbV5eXi2mtfiQIpOfL774Am+//TZ8fHyQlJQkdRzWAS6VARg7dixSU1MBAHfu3IGjo6PEiVh7\n+ESFzOXm5iI1NRVEBCMjI0RHR0sdiXWASyVzBw4c0FwTuK6uDhERERInYh3h3T+Zc3V1RXp6epPv\nzbhx4wZefPFFCVOx9vCWSsauX7+Oq1evNimUUqls9YqTTD64VDL29ddfw8TEpMm06upq3gWUOd79\nkzFnZ2fk5OS0et/58+fxH//xH3pOxLTBWyqZOnPmTJuFUiqVOHDggJ4TMW1xqWTqwIEDLXb9GlRX\nVyMyMhL19fV6TsW0wbt/MlRfX4++ffuioKCg3fkSExMxbtw4PaVi2uItlQydOnWqw0KZmJjwLqBM\ncalk6MiRIxAEAb169dLclEplk5/r6+v53RUyxRcokKFFixa1+EjBu+++i9mzZ8Pd3V0zbeDAgfqO\nxrTAx1QGQhAEREdH80dyDADv/jEmMi4VYyLjUjEmMi4VYyLjUjEmMi4VYyLjUjEmMi4VYyLjUjEm\nMi4VYyLjUjEmMi4VYyLjUjEmMi4VYyLjUjEmMi4VYyLjUjEmMi4VYyLjUjEmMi4VYyLjUjEmMi4V\nYyLjUjEmMi4VYyLjUjEmMi4VYyLjUjEmMi4VYyLjUjEmMi4VYyLjUjEmMr7om0zk5eXh9u3bKCgo\nQFFRkeYGABUVFQCAXbt24fz58wAAlUoFW1tb2NnZ4fnnn4eTkxMGDBgApVIp2WNgT/FF3/QsJycH\n586dw+XLl3Hp0iWkp6cjJycHlZWVmnkaCmNrawtBEGBmZgYigrGxMUpLSwEApaWlmuI1/AoVCgUc\nHR0xdOhQuLm5wd3dHSNHjoSbmxuMjfnvp75wqbrYzZs3ERcXh+TkZKSkpCAvLw8KhQKDBw+Gh4cH\nhg8fjsGDB8PZ2RnOzs7o06cPevXqpfX66+vrUVBQgNzcXNy+fRvZ2dm4fv26prDl5eVQqVR49dVX\nMXbsWPj7+8Pb25tL1oW4VCKrq6tDYmIiYmJi8P333yMrKws2Njbw8fGBt7c3xo4di1GjRsHc3Fwv\nWW7cuIGUlBSkpKQgKSkJWVlZsLa2hr+/P6ZOnYopU6bAysqqy7P0JFwqkZw9exYRERGIiYnBvXv3\n4OHhgZCQEAQHB8PLywtGRkZSRwQA3Lp1C3FxcYiNjcXJkyehUCgQFBSE2bNnY+rUqXxMJgZinfb4\n8WP6+9//TiNHjiQANGLECPrggw/oxo0bUkfTysOHD2nPnj0UFBRERkZGZG9vT+vWraObN29KHc2g\ncak6IT8/n/7nf/6HbGxsyNTUlGbOnEnx8fFSx3omeXl59NFHH5GLiwspFAqaPHmywT8mqXCpdJCV\nlUW/+93vyMTEhPr160cfffQRFRcXSx1LVHV1dRQTE0Pe3t4EgLy8vOjEiRNSxzIoXCot5OXl0bJl\ny0ipVNILL7xAERERVF1dLXWsLvfjjz9SUFAQAaDf/OY3lJycLHUkg8ClakdFRQVt2rSJVCoVDRgw\ngHbu3NkjytRccnIy+fn5kSAIFBYWRjk5OVJHkjUuVRtiY2PJxcWFLCws6IMPPqDy8nKpI0num2++\noSFDhpCZmRm9//77PfIPjDa4VM0UFBTQnDlzCACFhYXRnTt3pI4kK1VVVfTxxx+Tubk5ubm5UVpa\nmtSRZIdL1ci3335L9vb25OTkREePHpU6jqxlZGTQxIkTycjIiDZu3MhbrUa4VERUXl5Oy5cvJ0EQ\naP78+fT48WOpIxmE+vp62r59O1lYWNDo0aP5/7f+rceX6tatW+Tu7k69e/emffv2SR3HIF2/fp1G\njRpFKpWKDh48KHUcyfXoz1MdO3YMo0ePhomJCS5cuIA333xT6kgGaejQofjxxx8xb948hIWF4Q9/\n+APq6uqkjiUdqVstlT//+c+kUChowYIFVFFRIXWcbiMiIoLMzMwoKCiInjx5InUcSfS4UtXU1NCy\nZctIoVDQli1bpI7TLZ09e5b69u1LHh4elJubK3UcvetR71KvrKxEaGgo1Go19u/fj2nTpkkdqdvK\nyclBSEgIHj9+jPj4eAwbNkzqSHrTY0pVVlaGadOm4eeff0ZsbCw8PT2ljtTtPXr0CCEhIcjIyMCJ\nEyfg4eEhdSS96BEnKsrKyhAcHIyLFy9CrVZzofTE2toaJ06cgKurK/z8/HDu3DmpI+lFt99SVVZW\nIiQkBFeuXMGpU6cwfPhwqSP1OJWVlZg2bRrOnTuHU6dOwc3NTepIXapbl6qmpgbTp09HamoqTp48\n2WN2P+SooqICwcHBuHHjBhITEzFkyBCpI3WZblsqIsLChQsRExODhIQEvPrqq1JH6vFKSkoQEBCA\ngoICpKamwt7eXupIXaLbHlN98MEHiIyMxP79+7lQMmFpaYnvvvsORkZGCAkJQVlZmdSRuoZEp/K7\nVFRUFAmCQNu2bZM6CmvF9evX6bnnnqPQ0FCqr6+XOo7oul2pLl26RBYWFrR69Wqpo7B2qNVqMjY2\npr/85S9SRxFdtzqmevToEV599VX07dsXarUaJiYmUkdi7fjLX/6CjRs34sSJE/Dz85M6jmi6Valm\nzZqFxMREnD9/Hn379pU6DusAESE0NBQpKSm4dOkS7OzspI4kim5zoiIiIgIHDx7E7t27uVAGQhAE\n7Nq1C0qlEvPmzUO3+fsu5b6nWLKyssjS0pLWrFkjdRTWCT/88AMZGRnR9u3bpY4iCoPf/SMiTJo0\nCfn5+Th37pxOX+7P5OPdd9/FF198gatXr8LJyUnqOM/E4Ev15ZdfYtGiRUhKSoK3t7fUcVgnVVVV\nYeTIkRg8eDCOHTsmdZxnYtClKioqwtChQzF37lx8+umnUsdhz+j06dOYMGECDh06hBkzZkgdp9MM\nulQrVqzAkSNHcPPmTahUKqnjMBHMmzcPycnJSE9Ph6mpqdRxOsVgz/6lp6djx44d2Lx5MxeqG9m8\neTMKCgqwZcsWqaN0msFuqYKDg1FYWIi0tDQoFAb7t4G14oMPPsCf//xnZGVl4fnnn5c6js4M8tWY\nkpKCuLg4bN68mQvVDa1ZswYWFhb4+OOPpY7SKQa5pZowYQJqamqQlJQkdRTWRf73f/8XGzZsQEZG\nBvr16yd1HJ0Y3J/5pKQknDp1Ch9++KHUUVgXWrZsGWxtbfHXv/5V6ig6M7gt1dSpU1FUVITk5GSp\no7Au9sknn+D999/Hr7/+Cmtra6njaM2gtlS3bt3CsWPHsHbtWqmjMD1YunQpFAoFduzYIXUUnRhU\nqf72t7/BxcUFU6ZMkToK0wNLS0ssXrwYf/vb3wzqa6QNplQVFRWIjIzEkiVLYGRkJHUcpidvv/02\n7ty5g+PHj0sdRWsGU6p//vOfKC0txbx586SOwvRo0KBB8PX1xa5du6SOojWDKdWePXswZcoU/qxU\nD7R48WIcO3YMBQUFUkfRikGU6t69e0hKSsKcOXOkjsIkMH36dPTq1QsxMTFSR9GKQZTq4MGDMDc3\nx6RJk6SOwiRgbm6OkJAQREdHSx1FKwZRqpiYGEyZMgVmZmZSR2ESCQsLQ1JSEu7fvy91lA7JvlTF\nxcX48ccfMXXqVKmjMAkFBgbCxMQEcXFxUkfpkOxLFR8fDyLCxIkTpY7CJGRhYYFx48ZxqcQQFxcH\nLy8vPPfcc1JHYRILDg7GiRMnZP8fwbIv1Q8//MBbKQYAmDhxIh4+fIjLly9LHaVdsi7VvXv3kJWV\nBR8fH6mjMBlwdXWFjY0NUlJSpI7SLlmXKjk5GUZGRnzVDgYAUCgU8PT05FI9i3PnzmHEiBGwsrKS\nOgqTCU9PT5w5c0bqGO2SdakuXrzIVz9kTbi7uyMrKwslJSVSR2mTrEt16dKlbn99WKYbd3d3EBGu\nXr0qdZQ2ybZUxcXFyMvLg6urq9RRmIw4OztDpVLhypUrUkdpk2xLlZWVBQB44YUXJE7C5EShUMDF\nxQXZ2dlSR2mTbEuVnZ0NhUKBAQMGSB2FyQyXqpNycnLg4ODAV/FgLXCpOik/P9/gvu+tPYIgQBAE\nqWN0C46Ojrh3757UMdok21IVFhZ2m8tVMnHZ2dmhsLBQ6hhtkm2pioqKuFSsVba2tigtLUVVVZXU\nUVol21I9evRI71+gePXqVbz22mtQqVSwsrLCpEmTkJ6ertl1a7779uDBAyxfvhxOTk5QKpXo168f\nlixZ0mLXpPFyDetZvHhxk3kSEhIwZcoU2NjYwNTUFC+//DKioqJaZGycJTMzE2+88QZsbGya5NNm\nHm3HbLyuhlvjeZydnfW+a9vwiYXi4mK9jakTvV8QVUuvvPIKrV+/Xm/jZWRkkLW1NTk6OpJaraaS\nkhJKTk6msWPHEgBq/lTdu3ePBg4cSH369KHjx49TSUkJJSYm0sCBA8nFxYWKi4ubzN/aOprfP23a\nNCooKKCcnBwKCAggABQXF9fqvAAoICCAUlJSqLy8nGJjY5usX9t5tBkzISGBAJCDgwNVV1c3uW/n\nzp0UEhLS8RMsojNnzhAAun37tl7H1ZZsS+Xu7k7//d//rbfx5syZQwAoMjKyyfSGF2LzQixdupQA\n0O7du5tMP3z4MAGgjRs3NpmuTamys7M1P1+7do0A0Lhx41qdFwCdOnWq3fVpM4+2Y3p4eBAAioiI\naDLdzc2N4uPj2xyjK1y4cIEA0I0bN/Q6rrZkW6phw4bR+++/r7fx+vTpQwDo7t27TaYXFxe3WghH\nR0cCQHl5eU2mFxYWEgByc3NrMr2jUjVXW1tLAMjW1rbFfQ3rKisra3N5bebRZcwvv/ySANDIkSM1\n09RqNY0YMULr9YulofwXL17U+9jakO0xFfD0yvP60nA2qfnJkbaO6x48eADg6endxscbDctnZmZq\nPfajR4+wceNGvPTSS7C0tIQgCDA2Ngbw9IRNW8zNzTtcd1vz6DpmeHg4HBwccOHCBZw8eRIAsHXr\nVqxevbrDDGJreF3I9dpk8kwFoFevXqipqdHbeA1laH6qtq1Tt3369AEAPHz4EPR0i9/kVlZWpvXY\noaGh2Lx5M8LCwpCTk6NZR1fSdUylUomVK1cCALZs2YKsrCykpqZK8l2MDWf95PrGANmWSqlUorq6\nWm/jBQYGAgDUanWT6W19IG7atGkAnl5RvbmkpCR4eno2mdawxaipqUF5eTlsbW1bjLF27VrNma2u\nPl3cmTGXLVsGc3NzxMbGYtWqVVi8eLEkXxvX8LqQa6lke0z1m9/8hlauXKm38TIzM1uc/UtKSqLg\n4OBWj4cKCwtpyJAh5ODgQIcOHaLCwkJ68uQJffvtt+Ti4kKnT59uMr+npycBoOTkZIqKiqLJkydr\n7ps0aRIBoA0bNlBxcTEVFRXRmjVr2jwOa2u6LvPoOmaD5cuXEwAyNjamO3futJuhq5w+fZoA0P37\n9yUZvyOyLdW0adNo9uzZeh3zypUrFBwcTBYWFmRpaUmTJ0+mjIwMAkAKhaLF/A8fPqQ1a9aQi4sL\nmZiYUJ8+fej111+n1NTUFvOePXuWPDw8yNzcnDw9PZucubp//z7NnTuX7O3tSalUkqurK0VHR2te\n4I1f5I2ndVS69ubRZczGbt68SQqFgmbNmqXVc9oV/vnPf5IgCFRTUyNZhvbItlSLFi2iwMBAqWPQ\n3bt3CQDZ29tLHUUW6urqyMHBodU/HPqyfft2sra2lmz8jsj2mMrW1lbv7+8SBAEZGRlNpiUmJgIA\n/Pz89JpFrr777jsMGDCgxTGjPhUVFTU5JpUb2ZbK0dERd+7c0fu4K1asQGZmJsrKyqBWq7F+/XpY\nWVnhvffe03sWuRAEAT/99BOKi4vxxz/+ERs3bpQ0T25urqw/wSDbUrm4uODBgwc6nZp+VgkJCbC0\ntMTYsWNhbW2N8PBweHp6Ii0tDcOGDdNbDjny8vLCkCFDMHnyZMkvD5udnQ0XFxdJM7THWOoAbXF2\ndgbw9MOKw4cP18uYEydO5G/DbQXp8T/htZGdnY0xY8ZIHaNNst1SDRo0CIIg4ObNm1JHYTJSW1uL\n27dvY/DgwVJHaZNsS6VSqTBo0CDZf282068bN26gqqoK7u7uUkdpk2xLBQBubm5cKtbE5cuXYWxs\nLOtjXFmXyt3dHRcuXJA6BpORS5cuYejQofJ9ixJkXipPT09kZGQYzFXJWddLSUmBl5eX1DHaJetS\neXl5QRAEpKamSh2FyUBNTQ3OnTuHsWPHSh2lXbIulbW1NYYPH47k5GSpozAZ+Pnnn1FeXg5vb2+p\no7RL1qUCnr49KD4+XuoYTAbi4+Ph5OSEIUOGSB2lXbIvVVBQEC5evIi8vDypozCJff/99wgKCpL9\nl5LKvlTjx4+HqampQVyVnHWdhw8f4syZMwgKCpI6SodkXypzc3NMmDAB//rXv6SOwiR09OhRGBsb\nw9/fX+ooHZJ9qQBg5syZOH78uHy/PJF1uejoaAQFBaF3795SR+mQQZRq+vTpUCgUOHr0qNRRmASK\ni4tx8uRJhIWFSR1FKwZRKisrKwQFBWHfvn1SR2ESOHDgAExMTPD6669LHUUrBlEqAFi4cCHUanWL\nT+ay7m/Xrl0ICwuDSqWSOopWDKZUr732Gvr374+9e/dKHYXp0blz5/DLL79g0aJFUkfRmsGUysjI\nCAsWLMCuXbtQWVkpdRymJ//4xz8wYsQI2b+LojGDKRXw9Psjnjx5gsjISKmjMD3Iy8vD/v378c47\n70gdRScGVSp7e3vMnj0bf/3rX1FfXy91HNbFPvvsM1hbW+PNN9+UOopODKpUALBmzRrcunULR44c\nkToK60IPHz7Etm3bsHr1apiamkodRycCye1bPbQQFhaGq1ev4tKlS7K98gN7Nhs3bsSOHTuQlZUF\nKysrqePoxCBfke+99x6uX7/e6uU7meErKCjA559/jj/84Q8GVyjAQLdUADB//nwkJSUhPT3d4HYP\nWPtWrFiBw4cPIyMjAxYWFlLH0ZlBbqkAYNOmTXjw4AE+/fRTqaMwEaWnp2PHjh3YtGmTQRYKMOAt\nFQC8//77+OSTT3Djxg04ODhIHYeJICAgAMXFxThz5ozBHi8bdKkqKiowYsQIjBo1CocOHZI6DntG\nX3/9NebOnYvExETZfw9Fewy6VABw8uRJ+Pv7IyYmBtOnT5c6DuukoqIiDB8+HDNmzMA//vEPqeM8\nE4MvFQAsWLAA8fHxuHLlCmxsbKSOwzph7ty5OHXqFK5evWoQn5lqj2HutDazZcsWCIKApUuXSh2F\ndUJUVBT279+P7du3G3yhAMj3mr+6On36NCkUCtqzZ4/UUZgOcnNz6bnnntPr9Z27WrfY/Wvw+9//\nHtu2bcNPP/2EESNGSB2HdaC6uhrjx4/HkydPcPbsWUmudN8VulWpampq4O/vj/z8fJw9e7Z77Ep0\nY2+//TYiIyO73R/BbnFM1cDExARRUVEoLS3F/Pnz+Z3sMhYREYFt27Zh79693apQALrPMVVjSUlJ\n1KtXL1q3bp3UUVgrTp8+TUqlktavXy91lC7RLUtFRBQVFUWCINDnn38udRTWyLVr1+i5556j3/72\nt1RXVyd1nC4h22v+PquwsDDcunUL//Vf/wUHBwfMmDFD6kg9Xm5uLoKDgzF06FB89dVXBvs2pI50\nqxMVrVm3bh0+++wzHD58GJMnT5Y6To9VUFAAX19fGBkZ4fTp07C1tZU6Upfp9qUiIixatAhRUVH4\n5ptvEBAQIHWkHufBgwfw9/dHZWUlEhMT0bdvX6kjdanuuf1tRBAE7Ny5EzNmzMDrr7/O33KrZ3fv\n3oWvry8qKiqgVqu7faGAHlAq4OnXm0VERGD+/Pn47W9/y58Y1pPMzEyMGzcOCoUCiYmJ6N+/v9SR\n9KLbnqhoTqFQYNu2bVCpVJg9ezZycnKwfv16qWN1W6mpqZg6dSoGDhyI77//HnZ2dlJH0h9Jzz1K\nZOvWrWRkZERLliyh6upqqeN0OwcPHiQzMzN6/fXXqbS0VOo4etcjS0VE9CEbb+gAAA5ZSURBVM03\n35CFhQWNGzeO8vLypI7TLdTW1tK7775LgiDQf/7nf1Jtba3UkSTRY0tFRHT58mUaMmQIOTg4UFJS\nktRxDNqDBw/I39+fTE1Nae/evVLHkVSPOFHRFldXV5w9exajR4+Gn58f3nvvPdTW1kody+AcP34c\n7u7uyMzMREpKChYsWCB1JGlJ3Wo5qK+vp88//5zMzMzIy8uLbt26JXUkg1BWVkarV68mQRAoPDyc\nHj16JHUkWeBSNXLlyhUaOXIkmZmZ0UcffUQ1NTVSR5Kt+Ph4Gjx4MPXu3ZsiIyOljiMrXKpmqqur\n6cMPPyRTU1MaOXIkH2s1k5eXR/PmzSNBEGj69Ol09+5dqSPJDpeqDTdu3CB/f38SBIHCwsIoJydH\n6kiSqqiooE2bNpFKpaIBAwZQTEyM1JFki0vVgfj4eBo+fDgplUpasmRJjzv9Xl1dTRERETRo0CAy\nNzen9evXU0lJidSxZI1LpYWqqir67LPPyMHBgSwsLOj3v/99t9/tqayspJ07d9KgQYNIqVTS8uXL\n6c6dO1LHMghcKh2UlZXRJ598Qn379iWlUkkLFiygixcvSh1LVIWFhfThhx9qHuPixYspOztb6lgG\nhUvVCVVVVRQREUGurq4EgEaNGkXbt2832N2i+vp6SkpKoiVLlpC5uTlZWVnRqlWrKDc3V+poBolL\n9Qzq6+tJrVZTeHg4mZqakkqlovDwcDpy5AhVVFRIHa9DZ86coXXr1tGAAQMIAHl5edHu3bt75Pv1\nxNTtP6SoLw8fPkR0dDSio6ORlJQECwsLBAQEICgoCEFBQbL42ENpaSnUajXi4uIQFxeH27dv44UX\nXkBoaChmz57d/b7VSCJcqi6Ql5eHI0eO4Pvvv8epU6dQXl6OF154Ad7e3vDx8cHo0aMxfPhwKJXK\nLstARLh9+zZ++eUXJCcn48cff8T58+dRV1eHUaNGISgoCFOnTsWoUaO6LENPxaXqYpWVlUhOTkZS\nUhJSUlKQlpaG0tJSGBsbY+jQoRgxYgQGDRoEZ2dnODs7w8HBAba2trC1tW33CpH19fUoLCxEUVER\nioqKkJ2djdu3byM7OxvXr1/HlStXUFJSAiMjI7i5ucHHxwdjx47FxIkT8fzzz+vxGeh5uFR6Vltb\ni5s3b+Ly5cu4ePEirl27pinE48ePm8zbq1cvmJubAwDKyspgZmYGhUKB2tpalJSUNJlXqVRi4MCB\ncHZ2xosvvgh3d3e4ubnBzc0NKpVKb4+Pcalkpbi4GPfv38fDhw9RVFSEkpISlJaW4sKFC/jiiy/w\nyiuv4K233oJSqYSlpaVmi2Zra4u+fft226/8MjRcKgMQGhqKQ4cOwczMDIWFhZqtF5Mn/tMmc2Vl\nZfj2228BAFVVVfxtUAaASyVzhw8fRnV1NYCnX7e2b98+iROxjnCpZG7fvn0QBAEAUFdXh+PHj6Oo\nqEjiVKw9XCoZKywshFqtRl1dnWYaEeHIkSMSpmId4VLJ2MGDB1tMIyJ89dVXEqRh2uKzfzLm5eWF\nM2fOtLh4nSAIyM3NRb9+/SRKxtrDWyqZys3NRVpaWqtXgzQyMmp1K8bkgUslUwcOHICRkVGr99XV\n1SEiIkLPiZi2ePdPplxdXZGeno72fj03btzAiy++qMdUTBu8pZKh69ev4+rVq+0WSqlU8tVLZIpL\nJUNff/11h/NUV1fzWUCZ6jGX0jEkgwcPhq+vb5Np58+fh4uLC2xsbDTTXFxc9B2NaYGPqQyEIAiI\njo5GaGio1FFYB3j3jzGRcakYExmXijGRcakYExmXijGRcakYExmXijGRcakYExmXijGRcakYExmX\nijGRcakYExmXijGRcakYExmXijGRcakYExmXijGRcakYExmXijGRcakYExmXijGRcakYExmXijGR\ncakYExmXijGRcakYExmXijGRcakYExmXijGRcakYExmXijGRdeqibzk5OairqxM7C2tH7969UVxc\njKysLKmj9CgODg4wMzPTbSHSUWxsLAHgG996xO13v/udrhUhnbdUJSUlAIBz587puihjBuXdd99F\naWmpzst1+pq/o0aN6uyijBmExtdX1gWfqGBMZFwqxkTGpWJMZFwqxkTGpWJMZFwqxkTGpWJMZFwq\nxkTGpWJMZFwqxkTGpWJMZFwqxkTGpWKiEwRBc+ssR0dHzJgxQ/NzeHg4evfu3e7n+OLj4+Hn5wcr\nKytYWVlhwoQJSEhI6HSGzuJSydi4ceMwbtw42axHW0T0TMtnZmYiPz+/SeYffvgBPj4+MDIyanWZ\niIgIBAYGws3NDVlZWcjKyoKrqysCAwOxb9++Z8qjKy6VjNXX16O+vl4269GXpKQkANCU6tatW8jP\nz4evr2+r8+fn52PFihXw8vLC1q1bYWdnBzs7O2zduhVjxozB22+/jfv37+stP5dKxlJSUpCSkiKb\n9ehLUlISLC0tMXLkSABPt1IA2izV7t27UVZWhoULFzbZ5RQEAQsXLkRJSQn27NnT9cH/rdMfUmRM\nTKampqiqqmoyzdi46cvT09NT8+/Gu5gNx01jxoxpsd6GaSdOnMCGDRtEy9sevW2pEhISMGXKFNjY\n2MDU1BQvv/wyoqKiWszX+CA3MzMTb7zxBmxsbJoc+Gozj7ZjNl5Xw63xPM7OzlofdN+7dw9Lly6F\nk5MTlEolnJycsGzZsha7Hro+xuauXr2K1157DSqVClZWVpg0aRLS09NbXaat9TSenpubi6lTp8LS\n0hJ9+vTBnDlzUFRU1GJcbX+HnVFZWQkiwuXLlwEAu3btAhGhrq4O5ubmWLBgAYhIc2vs2rVrAID+\n/fu3WO+AAQMAANevXxclp1Z0/VKL6Oho6sRiBICmTZtGBQUFlJOTQwEBAQSA4uLiWp0XAAUEBFBK\nSgqVl5drvnBG13m0GTMhIYEAkIODA1VXVze5b+fOnRQSEtLh48vPz6f+/fuTo6MjqdVqevLkCSUk\nJFDfvn1p4MCBdO/evU4/xsYyMjLI2tpaM05JSQklJyfT2LFjW52/rfU0nv7mm29Seno6PXr0iJYv\nX04AaMGCBa3Or+vvUFeRkZEEgH7++WciIkpPTycAtHXr1jaXUSqVBIBqampa3FdTU0MAqFevXjpn\nmTlzJs2cOVPn5fRaquzsbM3P165dIwA0bty4VucFQKdOnWp3fdrMo+2YHh4eBIAiIiKaTHdzc6P4\n+Pg2x2jw1ltvEQCKjIxsMv3LL78kALR06dJO5W/+XM+ZM6fVcRp/y5U262k8/fTp05pp2dnZBIAc\nHR1bnV/X36Gu1q5dSyYmJlRVVUVERPv37ycAlJiY2OYyPbZUzdXW1hIAsrW1bRnq37+QsrKyNpfX\nZh5dxmx48Y8cOVIzTa1W04gRI1odt/GNiMjBwYEA0N27d5vMf+fOHQJA/fr16/RjbKxPnz6tjlNc\nXNzpUj158kQzraqqigCQIAht5mqgze+wtWnNn7vGJk6cSB4eHpqf161bR4Ig0OPHj9vMYW9vTwCo\nuLi4xX0Nz0vfvn07fDzNybpUxcXFtGHDBho2bBipVKoOn1ht/sp1NI+uY1ZVVWmKoVariYhoypQp\ntGPHDq0eo7GxMQHQ/IVtUFlZSQDIxMRElMdoZGTU6jjtrVOM6V3xO2w+rza31grs6+tLAOjSpUst\n7rt48SIBoPHjx2uVpbHOlkovJypCQ0OxefNmhIWFIScnp9WDTanHVCqVWLlyJQBgy5YtyMrKQmpq\nKubMmaPVePb29gCAwsLCJtMbfm64/1nZ2dm1O05X6crfYcO6jh49CgBQq9UgImRkZAAANm3apJmn\ntcfp7+8PAEhLS2tx35kzZwAAgYGBomTViq4t7MyWytzcvMVuRsNf8NbW1dZ0XebRdUwioqKiIjI3\nNydBECgkJIQ2bNjQ0UPTWLp0KQGgr776qsn0ht3KZcuW6ZS/rXnmzp3b6jj/+te/unRL1RW/w+bW\nr19PxsbGml3i3bt3EwBKTk5ud7m7d++ShYUFeXt7t7jP29ubVCoV5efn65SFSOa7f5MmTSIAtGHD\nBiouLqaioiJas2ZNl5ZK1zEbNJz9MjY2pjt37mj9GO/du0cDBw5scvZPrVaTg4NDu2f/dH2MmZmZ\nLc7+JSUlUXBwcJeWqit+h835+PjQ6NGjNT/PmzePzMzMWt3VbW7v3r0EgFavXk0FBQVUUFBAq1at\nIkEQWvwB0pasS3X//n2aO3cu2dvbk1KpJFdXV816mj/5jad19Atrbx5dxmzs5s2bpFAoaNasWTo9\nRqKnxVq6dCk5OjqSsbExOTo60pIlS9oslC6PsbErV65QcHAwWVhYkKWlJU2ePJkyMjIIACkUCq3W\no+v0Z/kdaqOqqopMTU3pnXfe0UwbOHCgTsdCx48fJ19fX1KpVKRSqWj8+PFanbltS2dLJRDptmN8\n8OBBhIWFdfkxkVTq6+vh5OSEw4cPN/kffLnLy8tDv379YG9vr9f3uXVnoaGhAJ6+5nXB7/1r5rvv\nvsOAAQNkXShBEDQH8Q0SExMBAH5+flJEYo1wqfD0RfrTTz+huLgYf/zjH7Fx40apI3VoxYoVyMzM\nRFlZGdRqNdavXw8rKyu89957Ukfr8bhU/+bl5YUhQ4Zg8uTJmDJlitRx2pWQkABLS0uMHTsW1tbW\nCA8Ph6enJ9LS0jBs2DCp4/V4/C51wOCODydOnIiJEydKHYO1gbdUjImMS8WYyLhUjImMS8WYyLhU\njImMS8WYyLhUjImMS8WYyLhUjImMS8WYyLhUjImMS8WYyLhUjIms0+9Sz8rKEjMHY7JTWloKlUql\n83I6l8rc3BwAMHjwYJ0HY8zQzJ8/X+dldP6OCiLCpUuXUFtbq/NgjBmaIUOGwMrKSqdldC4VY6x9\nfKKCMZFxqRgTmTEAPo3HmIj+D8Hr/Gg0nrSoAAAAAElFTkSuQmCC\n",
"text/plain": [
"<IPython.core.display.Image object>"
]
},
"execution_count": 7,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"dask.visualize(cube1.lazy_data())"
]
},
{
"cell_type": "code",
"execution_count": 9,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"image/png": "iVBORw0KGgoAAAANSUhEUgAAAO0AAAJfCAYAAACT0FHYAAAABmJLR0QA/wD/AP+gvaeTAAAgAElE\nQVR4nOzdeVxU9f4/8New76LggqCCuQu4pSKIqIi4Z+4aGddcb6a31ep2027d/ParLC0r0zRcWRLN\nBUFATUBUcAVRUURcEAVEJdln3r8/vHBFQAFn5jPnzPv5ePB46Jkz5/NimNecZWbOURARgTEmGQai\nAzDGGoZLy5jEcGkZkxijJyeUlJQgIiICSqVSRB7G2GP69u0LZ2fn6hPpCdu3bycA/MM//KMDP9Om\nTXuyolRjTVtRUQEA4IPKjIk1ZcqUWrd4eZ+WMYnh0jImMVxaxiSGS8uYxHBpGZMYLi1jEsOlZUxi\nuLSMSQyXljGJ4dIyJjFcWsYkhkvLmMRwaRmTGI2UNikpCUOGDKn6v0Kh0MQw7DGtW7fGxIkTq/4/\nffp0NGnS5Knfi1apVPjtt9/g5OT0zL+Ruv6G0dHRGDJkCGxsbGBjY4OhQ4ciJiZGLcvWpeUPGTIE\nSUlJahv3cWov7bp16zB8+HAsXrxY3YtWG29vb3h7e4uOoTYZGRm4detWtd/pzz//xMCBA2FoaFjr\nffbv349evXph/fr1uHnzplZyBgUFYfjw4XBzc8OVK1dw5coVuLq6Yvjw4di8ebOslr9o0SL4+flh\n7dq1zz1uDU9+wTYkJIRqmVwvERERpFAoKDg4uNr0xi6vsfDfLxDXxdPTkzw9PRt8P121YcMGAkDJ\nyclERJSenk4A6Msvv6zzPp07d6YdO3YQUf1+7+d9XLKzs8nS0pIGDBhAKpWqarpKpSIPDw+ytram\nnJwcWS1/8+bNpFAoKCIiolFjTp48mSZPnlxjutrWtGVlZZg3bx48PT0xdepUdS1WIxISEpCQkCA6\nhtrExcXB2toaPXv2BPBoLQsAPj4+dd4nNTUV48eP10o+APj111/x8OFDzJo1q9qmtkKhwKxZs1BY\nWIj169fLavmvvPIK+vfvj/nz56O8vLzRYz9JbaXdvn07rl+/jhkzZqhrkewpzMzMoFAooFAosH79\nehQWFsLIyAgKhQJz5swBAHh4eFTN8yQjoxonLdGoyv2+/v3717itctr+/ftlt/wZM2bg2rVr2L59\ne6PHfpLaSrtr1y4AwIsvvljjNqrl1DXnzp3DqFGjYGVlBRsbG/j7+yMtLa3qSfbkE+3OnTtYsGAB\n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\nrkJggg==\n",
"text/plain": [
"<IPython.core.display.Image object>"
]
},
"execution_count": 9,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"dask.visualize(cube1[:15].lazy_data())"
]
},
{
"cell_type": "code",
"execution_count": 31,
"metadata": {
"collapsed": false
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"0: eastward_wind / (m s-1) (time: 15; latitude: 160; longitude: 320)\n",
"1: eastward_wind / (m s-1) (time: 16; latitude: 160; longitude: 320)\n",
"\n",
"eastward_wind / (m s-1) (time: 31; latitude: 160; longitude: 320)\n",
" Dimension coordinates:\n",
" time x - -\n",
" latitude - x -\n",
" longitude - - x\n",
" Scalar coordinates:\n",
" height: 10.0 m\n",
" Attributes:\n",
" Conventions: CF-1.0\n",
" cmor_version: 0.96\n",
" comment: This run was initiated from the end of the corresponding 20C3M run of CCSR/NIES/FRCGC...\n",
" contact: Seita Emori (emori@nies.go.jp)\n",
" experiment_id: 720 ppm stabilization experiment (SRES A1B)\n",
" history: At 15:14:34 on 01/13/2005: CMOR altered the data in the following ways:...\n",
" institution: CCSR/NIES/FRCGC (Center for Climate System Research, Tokyo, Japan / National...\n",
" original_name: 10m zonal wind\n",
" original_units: m/s\n",
" project_id: IPCC Fourth Assessment\n",
" realization: 1\n",
" references: K-1 Coupled GCM Description (K-1 Technical Report No.1) in preparation\n",
" source: MIROC3.2 (2004): atmosphere: AGCM (AGCM5.7b, T106 L56); ocean & sea ice:...\n",
" table_id: Table A2 (17 November 2004)\n",
" title: CCSR/NIES/FRCGC model output prepared for IPCC Fourth Assessment 720 ppm...\n",
" Cell methods:\n",
" mean: time (6 minutes)\n"
]
}
],
"source": [
"cubes = iris.cube.CubeList([cube1[:15], cube2[15:]])\n",
"print(cubes)\n",
"\n",
"cube3 = cubes.concatenate_cube()\n",
"print()\n",
"print(cube3)"
]
},
{
"cell_type": "code",
"execution_count": 19,
"metadata": {
"collapsed": false
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"{('array-9968a471ff0c99c89d25680484532ecf', 0, 0, 0): (<function getarray at 0x7f8fd28caf28>, 'array-original-9968a471ff0c99c89d25680484532ecf', (slice(0, 31, None), slice(0, 160, None), slice(0, 320, None))), 'array-original-01abdb1457d0a284d5ac800ed84dd81c': <NetCDFDataProxy shape=(31, 160, 320) dtype=dtype('float32') path='/vagrant/iris-test-data/test_data/NetCDF/global/xyt/SMALL_hires_wind_u_for_ipcc4.nc' variable_name='uas'>, ('concatenate-5728dfdd0c9fcb009fbef0ce46413ca8', 0, 0, 0): ('getitem-e97281e5d73b8b7392ef06acc5b535ce', 0, 0, 0), ('array-01abdb1457d0a284d5ac800ed84dd81c', 0, 0, 0): (<function getarray at 0x7f8fd28caf28>, 'array-original-01abdb1457d0a284d5ac800ed84dd81c', (slice(0, 31, None), slice(0, 160, None), slice(0, 320, None))), ('concatenate-5728dfdd0c9fcb009fbef0ce46413ca8', 1, 0, 0): ('getitem-d44796af3e030a0321d4bdd05b2b82d6', 0, 0, 0), ('getitem-e97281e5d73b8b7392ef06acc5b535ce', 0, 0, 0): (<built-in function getitem>, ('array-01abdb1457d0a284d5ac800ed84dd81c', 0, 0, 0), (slice(0, 15, 1), slice(None, None, None), slice(None, None, None))), ('getitem-d44796af3e030a0321d4bdd05b2b82d6', 0, 0, 0): (<built-in function getitem>, ('array-9968a471ff0c99c89d25680484532ecf', 0, 0, 0), (slice(15, 31, 1), slice(None, None, None), slice(None, None, None))), 'array-original-9968a471ff0c99c89d25680484532ecf': <NetCDFDataProxy shape=(31, 160, 320) dtype=dtype('float32') path='/vagrant/iris-test-data/test_data/NetCDF/global/xyt/SMALL_hires_wind_u_for_ipcc4.nc' variable_name='uas'>}\n"
]
}
],
"source": [
"print(cube3.lazy_data().dask)"
]
},
{
"cell_type": "code",
"execution_count": 21,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"image/png": "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\nzs7WYCrSJSw9VKasrCzs2rXricfHCwsL8eeffyIrK0uDyYhIqXx8fKCvr//EbXJycrB7924NJSJd\nw9JDZTp27Bhyc3Mr3C43NxfHjh3TQCIiUrrg4GAUFhZWuF1ISIgG0pAu4huOUpnUajWio6OhVqtL\nblu4cCEAYMWKFSW36enpwc7ODnp67M9EVLsSExORkZFR8nFQUBAWLVqEkydPltquY8eOMDU11XQ8\n0gEGsgOQdtLT00OvXr1K3VY8RHr37i0jEhEpXMeOHUt9fPnyZQCcSVR5fHhOREREisDSQ0RERIrA\n0kNERESKwNJDREREisDSQ0RERIrA0kNERESKwNJDREREisDSQ0RERIrA0kNERESKwNJDREREisDS\nQ0RERIrA0kNERESKwNJDREREisDSQ0RERIrA0kNERESKwNJDREREisDSQ0RERIrA0kNERESKwNJD\nREREisDSQ0RERIrA0kNERESKwNJDREREisDSQ0RERIrA0kNERESKwNJDREREisDSQ0RERIrA0kNE\nRESKwNJDREREisDSQ0RERIrA0kNERESKwNJDREREimAgO0B5fvjhB6SkpMiOQY+4fPkyAGDhwoWS\nk9Cj2rRpgzlz5siOUecdPHgQgYGBsmPQIy5fvoymTZtyJmkZfX19zJ07Fy1atJAd5TEqIYSQHaIs\nKpUKHTt2hKmpqewoRForIyMDiYmJ0NJf4zrFw8MDwcHB6Nixo+woRFrt1KlT8Pf3x8SJE2VHeYzW\nPtMDAMuXL4eHh4fsGERay9/fH5MmTZIdQzGcnJzg7+8vOwaRVlOpVFr7QIzn9BAREZEisPQQERGR\nIrD0EBERkSKw9BAREZEisPQQERGRIrD0EBERkSKw9BAREZEisPQQERGRIrD0EBERkSKw9BAREZEi\nsPQQERGRIrD0EBERkSKw9BAREZEi1NnSExkZiWHDhpV8rFKpJKbRHm3atMGECRNKPp48eTKaNGmC\noqKicj8nKCgIw4YNQ+PGjdG4cWMMHz4cwcHBZW5bU9/nqqypy/sfNmwYIiMja2xd0m6cS2WrzlxS\nq9XYsGED2rVrV+H3kXOpavuvy3OpTpaetWvXwsXFBXPnzpUdRatcvnwZN2/exODBg0tuO3z4MAYN\nGgR9ff0yP8fLywsuLi6wtbVFYmIiEhMTYWNjAxcXF2zatKlWctb2mtq0/zlz5sDZ2Rlr1qx56nVJ\n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\n5bD00BM9erLgowwNDeHj4yMhEREpWUhICNLT0x+7vaCgAJs3b0ZhYaGEVKQrWHqoXAUFBfD39y85\nWfCf9/n6+j72aIuIqDb5+Pg8dmir2L1793jxSHoilh4qV0BAAB48eFDu/VlZWQgMDNRgIiJSsry8\nPGzbtq3cB1t8BpoqwtJD5dq8eXOZh7aK6evrY/PmzRpMRERKtnfvXjx8+LDc+wsKCrBt2zbk5ORo\nMBXpEpYeKtPDhw+xa9euMg9tFSssLMSff/75xCFERFRTfHx8oK+v/8RtcnJysHv3bg0lIl3D0kNl\nioiIQG5uboXb5ebm8mWiRKQRQUFBlTpRmef1UHn4hqNUpqKiIkRERCAvL6/ktk8++QQA8N///rfk\ntnr16mHgwIEVPvoiInpa8fHxuHHjRsnHhw8fxqeffoqgoKBS2z333HNo1qyZpuORDmDpoUrz8PAA\nAPj7+0tOQkT09yyaNGkSr8RMlcbDW0RERKQILD1ERESkCCw9REREpAgsPURERKQILD1ERESkCCw9\nREREpAgsPURERKQILD1ERESkCCw9REREpAgsPURERKQILD1ERESkCCw9REREpAgsPURERKQILD1E\nRESkCCw9REREpAgsPURERKQILD1ERESkCCw9REREpAgsPURERKQILD1ERESkCCw9REREpAgsPURE\nRKQILD1ERESkCCw9REREpAgsPURERKQILD1ERESkCCw9REREpAgsPURERKQILD1ERESkCCw9RERE\npAgsPURERKQIBrIDkHz5+fm4evUqrly5gitXriAlJQV3797FnTt3cOfOHRQWFuLhw4e4cOECAGDg\nwIFo2LAhDAwMYGZmVvKvTZs2sLS0hKWlJSwsLGBkZCT5KyMiXSSEwM2bN0tm0rVr13D79u2SmZST\nk4OCggJcv34d+vr66NOnD0xNTQEATZo0QfPmzWFmZobmzZvD0tISVlZWsLS0ROPGjSV/ZSSbSggh\nZIcgzcnKysKJEydw4sQJREdH4+zZs7hw4QIKCwsBACYmJmjXrl2pMmNgYICGDRuWlJj8/Hw8fPgQ\nhYWFJUMoPT0d169fR1ZWFgDAwMAAXbp0ga2tLezs7NC/f3/069cPDRs2lPa1E5H2KSoqwrlz5xAR\nEYGoqCicPXsWsbGxyMzMBAAYGhqiTZs2aNmyJczMzGBubo769evDyMio1DzJyMgAANy7d6+kIN26\n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\n6vg160QUcD0Pa5nNZlRVVUFRFJw7dw67du1SuToKBrz3FnmksLAQ8uzLLFFYWKh2OUSkcUVFRQAA\nEcHZs2d5U2byCEMPDer+/fsoLy+H3W6H3W5HeXk57t27p3ZZRKRhjg0x4Nl5hcePH1e5IgoGDD00\nqB9++AGhoaHOxzqdzrmVRUQUaHfu3MHly5dht9sBADabjXugySMMPTSowsLCXldydXd3s8EQkWr6\nboiJCK5cuYLa2loVq6JgwNBDA7p9+zauX7+Onhf5iQiuXbuGmpoaFSsjIq0qLCxEd3d3r2l6vR7F\nxcUqVUTBgqGHBnT06FGXl34aDAYe4iKigKupqXG5wdXV1YX9+/erUBEFE4YeGlBhYSG6urr6Te/s\n7MSBAwcCXxARadqRI0fcfgdPfX09rl69GuCKKJgw9JBbly9fhtFodPu8yWRCVVVVACsiIq07dOiQ\nyw0x4NkhrqNHjwa4IgomDD3k1tGjRwe8+7HBYGCDIaKAqaiowJ07d9w+39XV1etSdqK+GHrIJbvd\njsOHDztvMupKZ2dnvyu7iIj8ZbANMQBobm5GWVlZgCqiYMPQQy6Vl5fj33//hV6vx5gxY1z+6PV6\nmM1mXLx4Ue1yiUgDjh07BpvN5rYnjRkzBoqi8IsKyS3ee4tcSk9PxxdffNHr2PmJEycAAKtXr3ZO\n0+v1SE9PD3h9RKQ9O3fuhMlkcj6+desWTpw4gR07dvSab+XKlYEujYIE77JOHsvNzQUAfhcGEY0I\nxcXFyMvL4zk85DEe3iIiIiJNYOghIiIiTWDoISIiIk1g6CEiIiJNYOghIiIiTWDoISIiIk1g6CEi\nIiJNYOghIiIiTWDoISIiIk1g6CEiIiJNYOghIiIiTWDoISIiIk1g6CEiIiJNYOghIiIiTWDoISIi\nIk1g6CEiIiJNYOghIiIiTWDoISIiIk1g6CEiIiJNYOghIiIiTWDoISIiIk1g6CEiIiJNYOghIiIi\nTWDoISIiIk1g6CEiIiJNYOghIiIiTWDoISIiIk1g6CEiIiJNYOghIiIiTWDoISIiIk1g6CEiIiJN\n0KldgK/OnDkDs9msdhmaEhLyLCMfP35c5Uq05YUXXsD8+fPVLoMGUV9fjytXrqhdhqbU1NQgIyOD\nPSnAQkJCsHz5cowdO1btUrymiIioXYQvdDodbDab2mUQ+V1oaCi6u7vVLoMGsW7dOhw7dkztMogC\n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\nAAAAAElFTkSuQmCC\n",
"text/plain": [
"<IPython.core.display.Image object>"
]
},
"execution_count": 21,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"dask.visualize(cube3.lazy_data())"
]
},
{
"cell_type": "code",
"execution_count": 22,
"metadata": {
"collapsed": false
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"['array-original-01abdb1457d0a284d5ac800ed84dd81c', 'array-original-9968a471ff0c99c89d25680484532ecf']\n"
]
}
],
"source": [
"original_datasets = find_original_keys(cube3.lazy_data().dask)\n",
"print(original_datasets)"
]
},
{
"cell_type": "code",
"execution_count": 35,
"metadata": {
"collapsed": false
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"array-original-01abdb1457d0a284d5ac800ed84dd81c\n",
"<NetCDFDataProxy shape=(31, 160, 320) dtype=dtype('float32') path='/vagrant/iris-test-data/test_data/NetCDF/global/xyt/SMALL_hires_wind_u_for_ipcc4.nc' variable_name='uas'>\n",
"1e+20\n",
"\n",
"array-original-9968a471ff0c99c89d25680484532ecf\n",
"<NetCDFDataProxy shape=(31, 160, 320) dtype=dtype('float32') path='/vagrant/iris-test-data/test_data/NetCDF/global/xyt/SMALL_hires_wind_u_for_ipcc4.nc' variable_name='uas'>\n",
"1e+20\n",
"\n"
]
}
],
"source": [
"for dataset in original_datasets:\n",
" d = cube3.lazy_data().dask[dataset]\n",
" print(dataset)\n",
" print(d)\n",
" print(d.fill_value)\n",
" print()"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": []
}
],
"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.5.2"
}
},
"nbformat": 4,
"nbformat_minor": 2
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment