Create app.py
Browse files
app.py
ADDED
@@ -0,0 +1,48 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
# Import
|
2 |
+
import gradio
|
3 |
+
import geopandas as gpd
|
4 |
+
|
5 |
+
# Sample DataFrame acording to actual structure (use your own data)
|
6 |
+
data = {'GID_1': ['DEU.1_1','DEU.2_1'],
|
7 |
+
'GID_0': ['DEU', 'DEU'],
|
8 |
+
'COUNTRY': ['Germany', 'Germany'],
|
9 |
+
'NAME_1': ['Baden-Würtenberg', 'Bayern'],
|
10 |
+
'VARNAME_1': ['NA','Bavaria'],
|
11 |
+
'NL_NAME_1': ['NA', 'NA'],
|
12 |
+
'TYPE_1': ['Land', 'Freistaat'],
|
13 |
+
'ENGTYPE_1': ['State', 'Freestate'],
|
14 |
+
'CC_1': ['08','09'],
|
15 |
+
'HASC_1': ['DE.BW', 'DE.BY'], # Extra for subnational countys (https://de.wikipedia.org/wiki/Hierarchical_administrative_subdivision_codes)
|
16 |
+
'ISO_1': ['NA', 'DE-BY'], # International Order --> Check First (https://de.wikipedia.org/wiki/ISO_3166)
|
17 |
+
'geometry': [0,1]
|
18 |
+
}
|
19 |
+
gdf = gpd.GeoDataFrame(data)
|
20 |
+
|
21 |
+
# function to generate output
|
22 |
+
# Land should be a line from the geojson-table
|
23 |
+
# Currently only works for NUTS-1 areas!!!
|
24 |
+
|
25 |
+
def getCountrycode(land, level):
|
26 |
+
iso = 'ISO_'+ str(level)
|
27 |
+
hasc = 'HASC_' + str(level)
|
28 |
+
if land[iso] != 'NA':
|
29 |
+
return land[iso]
|
30 |
+
elif land[hasc]:
|
31 |
+
return land[hasc]
|
32 |
+
else:
|
33 |
+
return False
|
34 |
+
|
35 |
+
blub = gdf.iloc[0]
|
36 |
+
|
37 |
+
bay_cc = getCountrycode(blub,1)
|
38 |
+
# Testing
|
39 |
+
print(bay_cc)
|
40 |
+
|
41 |
+
# Gradio
|
42 |
+
import gradio as gr
|
43 |
+
|
44 |
+
def greet(name):
|
45 |
+
return "Hello " + name + "!!"
|
46 |
+
|
47 |
+
iface = gr.Interface(fn=greet, inputs="text", outputs="text")
|
48 |
+
iface.launch()
|