{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# Color Map" ] }, { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "All libraries successfully imported!\n" ] } ], "source": [ "import pandas as pd\n", "from pathlib import Path\n", "from IPython.display import display\n", "\n", "print('All libraries successfully imported!')" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Set directory" ] }, { "cell_type": "code", "execution_count": 17, "metadata": {}, "outputs": [], "source": [ "computer_path = '/export/miro/ndeffense/LBRAT2104/'\n", "\n", "color_map_path = f'{computer_path}data/COLOR_MAP/'\n", "\n", "Path(color_map_path).mkdir(parents=True, exist_ok=True)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Set parameters" ] }, { "cell_type": "code", "execution_count": 18, "metadata": {}, "outputs": [], "source": [ "field_name = 'grp_A'\n", "field_code = 'grp_A_nb'\n", "\n", "filename_csv = f'{color_map_path}color_map_{field_name}.csv'\n", "filename_clr = f'{color_map_path}color_map_{field_name}.clr'" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Read Excel color map" ] }, { "cell_type": "code", "execution_count": 22, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
grp_A_nbRGBTgrp_A
0111229141140255Wheat
11122301520255Maize
21132542540255Rice
31142521397255Sorghum
4115108158217255Barley
511618314864255Rye
611795196204255Oats
7118255255153255Millets
8119104204178255Other cereals
91211331123255Leafy or stem vegetables
1012224771119255Fruit-bearing vegetables
111231498497255Root, bulb or tuberous vegetables
12124216248255255Mushrooms and truffles
13141253254199255Soya beans
14142215158158255Groundnuts
15143120101146255Other oilseed crops
161511076811255Potatoes
1715235240155255Sweet potatoes
181531087979255Cassava
191542448183255Yams
2016123411058255Spice crops
21162239200195255Hops
2217130196248255Leguminous crops
23181151113209255Sugar beet
2418281123255Sugar cane
25313718831255Grassland and meadows
26192102051255Fibre crops
271931255190255255Medicinal, aromatic, pesticidal or similar crops
28194125525356255Flowers crops
29199117210342255Tobacco
30212041515255Fruits trees
3122212202254255Vineyards
32231011177255Olive groves
33241916622255Trees
3429151255255255Succulent plant
3551021020255Shrub land
3661411916255Forest
377180180180255Bare soil
3882441226255Build-up surface
399957197255Water bodies
\n", "
" ], "text/plain": [ " grp_A_nb R G B T \\\n", "0 111 229 141 140 255 \n", "1 112 230 152 0 255 \n", "2 113 254 254 0 255 \n", "3 114 252 139 7 255 \n", "4 115 108 158 217 255 \n", "5 116 183 148 64 255 \n", "6 117 95 196 204 255 \n", "7 118 255 255 153 255 \n", "8 119 104 204 178 255 \n", "9 121 133 1 123 255 \n", "10 122 247 71 119 255 \n", "11 123 149 84 97 255 \n", "12 124 216 248 255 255 \n", "13 141 253 254 199 255 \n", "14 142 215 158 158 255 \n", "15 143 120 101 146 255 \n", "16 151 107 68 11 255 \n", "17 152 35 240 155 255 \n", "18 153 108 79 79 255 \n", "19 154 244 8 183 255 \n", "20 161 234 110 58 255 \n", "21 162 239 200 195 255 \n", "22 17 130 196 248 255 \n", "23 181 151 113 209 255 \n", "24 182 8 112 3 255 \n", "25 3 137 188 31 255 \n", "26 192 102 0 51 255 \n", "27 1931 255 190 255 255 \n", "28 1941 255 253 56 255 \n", "29 1991 172 103 42 255 \n", "30 21 204 151 5 255 \n", "31 22 212 202 254 255 \n", "32 23 10 111 77 255 \n", "33 24 19 166 22 255 \n", "34 291 51 255 255 255 \n", "35 5 102 102 0 255 \n", "36 6 14 119 16 255 \n", "37 7 180 180 180 255 \n", "38 8 244 12 26 255 \n", "39 9 9 57 197 255 \n", "\n", " grp_A \n", "0 Wheat \n", "1 Maize \n", "2 Rice \n", "3 Sorghum \n", "4 Barley \n", "5 Rye \n", "6 Oats \n", "7 Millets \n", "8 Other cereals \n", "9 Leafy or stem vegetables \n", "10 Fruit-bearing vegetables \n", "11 Root, bulb or tuberous vegetables \n", "12 Mushrooms and truffles \n", "13 Soya beans \n", "14 Groundnuts \n", "15 Other oilseed crops \n", "16 Potatoes \n", "17 Sweet potatoes \n", "18 Cassava \n", "19 Yams \n", "20 Spice crops \n", "21 Hops \n", "22 Leguminous crops \n", "23 Sugar beet \n", "24 Sugar cane \n", "25 Grassland and meadows \n", "26 Fibre crops \n", "27 Medicinal, aromatic, pesticidal or similar crops \n", "28 Flowers crops \n", "29 Tobacco \n", "30 Fruits trees \n", "31 Vineyards \n", "32 Olive groves \n", "33 Trees \n", "34 Succulent plant \n", "35 Shrub land \n", "36 Forest \n", "37 Bare soil \n", "38 Build-up surface \n", "39 Water bodies " ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "df = pd.read_csv(filename_csv, sep=';', usecols=[field_name,'R','G','B','T',field_code])\n", "\n", "df.dropna(how='all', inplace=True)\n", "\n", "df = df.astype({'R': 'int32', 'G': 'int32', 'B': 'int32', 'T': 'int32', field_code : 'int32'})\n", "\n", "display(df)\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Write color map in QGIS style" ] }, { "cell_type": "code", "execution_count": 10, "metadata": {}, "outputs": [], "source": [ "f = open(filename_clr, \"w\")\n", "f.write(df.to_string(index=False, header=False))\n", "f.close()" ] } ], "metadata": { "interpreter": { "hash": "31f2aee4e71d21fbe5cf8b01ff0e069b9275f58929596ceb00d14d90e3e16cd6" }, "kernelspec": { "display_name": "Python 3.6.12 64-bit", "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.6.12" }, "orig_nbformat": 4 }, "nbformat": 4, "nbformat_minor": 2 }