Spaces:
Running
Running
BorowyP
commited on
Commit
•
d877f55
1
Parent(s):
aa47718
panel app
Browse files- Masseverlust.py +39 -28
Masseverlust.py
CHANGED
@@ -81,18 +81,18 @@ def create_df(standort):
|
|
81 |
|
82 |
kiefer_k = pd.DataFrame({'tiefen' : tiefen,
|
83 |
'10 Mon' : mrz21,
|
84 |
-
'
|
85 |
'28 Mon' : okt22})
|
86 |
|
87 |
kiefer_k_label = pd.DataFrame({'tiefen' : tiefen,
|
88 |
'10 Mon' : mrz21,
|
89 |
-
'
|
90 |
'28 Mon' : okt22})
|
91 |
|
92 |
|
93 |
|
94 |
-
kiefer_k['28 Mon'] = kiefer_k['28 Mon']-kiefer_k['
|
95 |
-
kiefer_k['
|
96 |
|
97 |
mrz21 = mpa.loc[mpa['Bestand'] == standort].loc[mpa['Kalk?'] == 'Kalk'].loc[mpa['bau'] == '2021-03-01'][['50-60.3',
|
98 |
'40-50.3',
|
@@ -118,18 +118,18 @@ def create_df(standort):
|
|
118 |
|
119 |
buche_k = pd.DataFrame({'tiefen' : tiefen,
|
120 |
'10 Mon' : mrz21,
|
121 |
-
'
|
122 |
'28 Mon' : okt22})
|
123 |
|
124 |
buche_k_label = pd.DataFrame({'tiefen' : tiefen,
|
125 |
'10 Mon' : mrz21,
|
126 |
-
'
|
127 |
'28 Mon' : okt22})
|
128 |
|
129 |
-
buche_k['28 Mon'] = buche_k['28 Mon']-buche_k['
|
130 |
-
buche_k['
|
131 |
|
132 |
-
buche_k[['10 Mon', '
|
133 |
|
134 |
|
135 |
|
@@ -161,19 +161,19 @@ def create_df(standort):
|
|
161 |
|
162 |
kiefer_nk = pd.DataFrame({'tiefen' : tiefen,
|
163 |
'10 Mon' : mrz21,
|
164 |
-
'
|
165 |
'28 Mon' : okt22})
|
166 |
|
167 |
kiefer_nk_label = pd.DataFrame({'tiefen' : tiefen,
|
168 |
'10 Mon' : mrz21,
|
169 |
-
'
|
170 |
'28 Mon' : okt22})
|
171 |
|
172 |
|
173 |
|
174 |
|
175 |
-
kiefer_nk['28 Mon'] = kiefer_nk['28 Mon']-kiefer_nk['
|
176 |
-
kiefer_nk['
|
177 |
|
178 |
|
179 |
mrz21 = mpa.loc[mpa['Bestand'] == standort].loc[mpa['Kalk?'] == 'ohne Kalk'].loc[mpa['bau'] == '2021-03-01'][['50-60.3',
|
@@ -200,19 +200,19 @@ def create_df(standort):
|
|
200 |
|
201 |
buche_nk = pd.DataFrame({'tiefen' : tiefen,
|
202 |
'10 Mon' : mrz21,
|
203 |
-
'
|
204 |
'28 Mon' : okt22})
|
205 |
|
206 |
buche_nk_label = pd.DataFrame({'tiefen' : tiefen,
|
207 |
'10 Mon' : mrz21,
|
208 |
-
'
|
209 |
'28 Mon' : okt22})
|
210 |
|
211 |
|
212 |
-
buche_nk['28 Mon'] = buche_nk['28 Mon']-buche_nk['
|
213 |
-
buche_nk['
|
214 |
|
215 |
-
buche_nk[['10 Mon', '
|
216 |
|
217 |
######################################################################################################################
|
218 |
|
@@ -224,7 +224,7 @@ def plot(df):
|
|
224 |
curdoc().clear()
|
225 |
|
226 |
tiefen = [ '40-50','30-40', '20-30', '10-20', '0-10', '-10-0']
|
227 |
-
zeitpunkt = ['10 Mon', '
|
228 |
|
229 |
hoehe = 500
|
230 |
breite = 600
|
@@ -414,18 +414,28 @@ lfe_logo = pn.pane.PNG('LFE_Logo.png', width=100)
|
|
414 |
|
415 |
fnr_logo = pn.pane.PNG('fnr_logo.png', width=100)
|
416 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
417 |
|
418 |
|
419 |
diagram_text = 'Die Diagramme stellen die zu den 3 Ausbauzeitpunkten ermittelten Masseverluste für die Buche (BU)- und Kiefer (KI)-Prüfkörper in allen 6 Tiefenstufen, auf dem jeweiligen Standort (Fläche) sowie für die Teilflächen gekalkt (K) und ungekalkt (nK) dar. Dabei sind die für die Holzart BU ermittelten Werte ausgehend von der vertikalen Mittellinie nach links in rot/gelb dargestellt und die für die Holzart KI ausgehend von der Mittellinie nach rechts in blau/grün. Die Masseverluste wurden vor Einbau und zu den Ausbauzeitpunkten (an den bei 103° C bis zur Massekonstanz gedarrten Stab-Prüfkörpern) bestimmt und sind auf der Abszisse in Prozent ablesbar.'
|
420 |
|
421 |
template = pn.template.FastListTemplate(
|
422 |
title='Holzdeko Dashboard',
|
423 |
-
sidebar=[
|
424 |
-
pn.pane.Markdown("## Einstellungen"),
|
425 |
-
'Standort',Stndrt_button,
|
426 |
-
#checkbox, # Aktiviert Hintergrundbild
|
427 |
-
lfe_logo,
|
428 |
-
fnr_logo
|
429 |
],
|
430 |
main=[pn.pane.Markdown("## Masseverlust"),
|
431 |
masseverlust_plot,
|
@@ -434,9 +444,10 @@ template = pn.template.FastListTemplate(
|
|
434 |
pn.pane.Markdown("## Mittelwerte"),
|
435 |
plot_mittelwerte
|
436 |
|
437 |
-
|
438 |
-
|
439 |
-
|
|
|
440 |
|
441 |
|
442 |
|
|
|
81 |
|
82 |
kiefer_k = pd.DataFrame({'tiefen' : tiefen,
|
83 |
'10 Mon' : mrz21,
|
84 |
+
'16 Mon' : okt21,
|
85 |
'28 Mon' : okt22})
|
86 |
|
87 |
kiefer_k_label = pd.DataFrame({'tiefen' : tiefen,
|
88 |
'10 Mon' : mrz21,
|
89 |
+
'16 Mon' : okt21,
|
90 |
'28 Mon' : okt22})
|
91 |
|
92 |
|
93 |
|
94 |
+
kiefer_k['28 Mon'] = kiefer_k['28 Mon']-kiefer_k['16 Mon']
|
95 |
+
kiefer_k['16 Mon'] = kiefer_k['16 Mon']-kiefer_k['10 Mon']
|
96 |
|
97 |
mrz21 = mpa.loc[mpa['Bestand'] == standort].loc[mpa['Kalk?'] == 'Kalk'].loc[mpa['bau'] == '2021-03-01'][['50-60.3',
|
98 |
'40-50.3',
|
|
|
118 |
|
119 |
buche_k = pd.DataFrame({'tiefen' : tiefen,
|
120 |
'10 Mon' : mrz21,
|
121 |
+
'16 Mon' : okt21,
|
122 |
'28 Mon' : okt22})
|
123 |
|
124 |
buche_k_label = pd.DataFrame({'tiefen' : tiefen,
|
125 |
'10 Mon' : mrz21,
|
126 |
+
'16 Mon' : okt21,
|
127 |
'28 Mon' : okt22})
|
128 |
|
129 |
+
buche_k['28 Mon'] = buche_k['28 Mon']-buche_k['16 Mon']
|
130 |
+
buche_k['16 Mon'] = buche_k['16 Mon']-buche_k['10 Mon']
|
131 |
|
132 |
+
buche_k[['10 Mon', '16 Mon', '28 Mon']] = buche_k[['10 Mon', '16 Mon', '28 Mon']]*-1
|
133 |
|
134 |
|
135 |
|
|
|
161 |
|
162 |
kiefer_nk = pd.DataFrame({'tiefen' : tiefen,
|
163 |
'10 Mon' : mrz21,
|
164 |
+
'16 Mon' : okt21,
|
165 |
'28 Mon' : okt22})
|
166 |
|
167 |
kiefer_nk_label = pd.DataFrame({'tiefen' : tiefen,
|
168 |
'10 Mon' : mrz21,
|
169 |
+
'16 Mon' : okt21,
|
170 |
'28 Mon' : okt22})
|
171 |
|
172 |
|
173 |
|
174 |
|
175 |
+
kiefer_nk['28 Mon'] = kiefer_nk['28 Mon']-kiefer_nk['16 Mon']
|
176 |
+
kiefer_nk['16 Mon'] = kiefer_nk['16 Mon']-kiefer_nk['10 Mon']
|
177 |
|
178 |
|
179 |
mrz21 = mpa.loc[mpa['Bestand'] == standort].loc[mpa['Kalk?'] == 'ohne Kalk'].loc[mpa['bau'] == '2021-03-01'][['50-60.3',
|
|
|
200 |
|
201 |
buche_nk = pd.DataFrame({'tiefen' : tiefen,
|
202 |
'10 Mon' : mrz21,
|
203 |
+
'16 Mon' : okt21,
|
204 |
'28 Mon' : okt22})
|
205 |
|
206 |
buche_nk_label = pd.DataFrame({'tiefen' : tiefen,
|
207 |
'10 Mon' : mrz21,
|
208 |
+
'16 Mon' : okt21,
|
209 |
'28 Mon' : okt22})
|
210 |
|
211 |
|
212 |
+
buche_nk['28 Mon'] = buche_nk['28 Mon']-buche_nk['16 Mon']
|
213 |
+
buche_nk['16 Mon'] = buche_nk['16 Mon']-buche_nk['10 Mon']
|
214 |
|
215 |
+
buche_nk[['10 Mon', '16 Mon', '28 Mon']] = buche_nk[['10 Mon', '16 Mon', '28 Mon']]*-1
|
216 |
|
217 |
######################################################################################################################
|
218 |
|
|
|
224 |
curdoc().clear()
|
225 |
|
226 |
tiefen = [ '40-50','30-40', '20-30', '10-20', '0-10', '-10-0']
|
227 |
+
zeitpunkt = ['10 Mon', '16 Mon', '28 Mon']
|
228 |
|
229 |
hoehe = 500
|
230 |
breite = 600
|
|
|
414 |
|
415 |
fnr_logo = pn.pane.PNG('fnr_logo.png', width=100)
|
416 |
|
417 |
+
sidebar_link_list = pn.pane.HTML(
|
418 |
+
'''
|
419 |
+
<div class="bk" style="position: relative; display: block; left: 0px; top: 0px; width: 314px; height: 522px; margin: 0px;"><div class="bk markdown" style="position: absolute; display: block; left: 5px; top: 5px; width: 304px; height: 48px;"><div class="bk bk-clearfix" style="display: inline-block; width: 100%;"><p><a href="https://paulborowy-20230303-multiple-panel.hf.space" target="_blank">Startseite</a></p></div></div><div class="bk markdown" style="position: absolute; display: block; left: 5px; top: 63px; width: 304px; height: 48px;"><div class="bk bk-clearfix" style="display: inline-block; width: 100%;"><p><a href="https://paulborowy-holzdeko.hf.space/Lufttemperatur" target="_blank">Lufttemperatur</a></p></div></div><div class="bk markdown" style="position: absolute; display: block; left: 5px; top: 121px; width: 304px; height: 48px;"><div class="bk bk-clearfix" style="display: inline-block; width: 100%;"><p><a href="https://paulborowy-holzdeko.hf.space/Luftfeuchte" target="_blank">Luftfeuchte</a></p></div></div><div class="bk markdown" style="position: absolute; display: block; left: 5px; top: 179px; width: 304px; height: 48px;"><div class="bk bk-clearfix" style="display: inline-block; width: 100%;"><p><a href="https://paulborowy-holzdeko.hf.space/Niederschlag" target="_blank">Niederschlag</a></p></div></div><div class="bk markdown" style="position: absolute; display: block; left: 5px; top: 237px; width: 304px; height: 48px;"><div class="bk bk-clearfix" style="display: inline-block; width: 100%;"><p><a href="https://paulborowy-holzdeko.hf.space/Bodentemperatur" target="_blank">Bodentemperatur</a></p></div></div><div class="bk markdown" style="position: absolute; display: block; left: 5px; top: 295px; width: 304px; height: 48px;"><div class="bk bk-clearfix" style="display: inline-block; width: 100%;"><p><a href="https://paulborowy-holzdeko.hf.space/Bodenfeuchte" target="_blank">Bodenfeuchte</a></p></div></div><div class="bk markdown" style="position: absolute; display: block; left: 5px; top: 353px; width: 304px; height: 48px;"><div class="bk bk-clearfix" style="display: inline-block; width: 100%;"><p><a href="https://paulborowy-holzdeko.hf.space/Hemisfere" target="_blank">Hemisfere</a></p></div></div><div class="bk markdown" style="position: absolute; display: block; left: 5px; top: 411px; width: 304px; height: 48px;"><div class="bk bk-clearfix" style="display: inline-block; width: 100%;"><p><a href="https://paulborowy-holzdeko.hf.space/Stahlrahmen" target="_blank">Streufall</a></p></div></div><div class="bk markdown" style="position: absolute; display: block; left: 5px; top: 469px; width: 304px; height: 48px;"><div class="bk bk-clearfix" style="display: inline-block; width: 100%;"><p><a href="https://paulborowy-holzdeko.hf.space/Masseverlust" target="_blank">Masseverlust</a></p></div></div></div>
|
420 |
+
|
421 |
+
''')
|
422 |
+
|
423 |
+
sidebar_menu = pn.Column(hd_logo,
|
424 |
+
pn.pane.Markdown("## Menu"),
|
425 |
+
sidebar_link_list,
|
426 |
+
lfe_logo,
|
427 |
+
fnr_logo )
|
428 |
+
|
429 |
+
|
430 |
+
|
431 |
+
|
432 |
|
433 |
|
434 |
diagram_text = 'Die Diagramme stellen die zu den 3 Ausbauzeitpunkten ermittelten Masseverluste für die Buche (BU)- und Kiefer (KI)-Prüfkörper in allen 6 Tiefenstufen, auf dem jeweiligen Standort (Fläche) sowie für die Teilflächen gekalkt (K) und ungekalkt (nK) dar. Dabei sind die für die Holzart BU ermittelten Werte ausgehend von der vertikalen Mittellinie nach links in rot/gelb dargestellt und die für die Holzart KI ausgehend von der Mittellinie nach rechts in blau/grün. Die Masseverluste wurden vor Einbau und zu den Ausbauzeitpunkten (an den bei 103° C bis zur Massekonstanz gedarrten Stab-Prüfkörpern) bestimmt und sind auf der Abszisse in Prozent ablesbar.'
|
435 |
|
436 |
template = pn.template.FastListTemplate(
|
437 |
title='Holzdeko Dashboard',
|
438 |
+
sidebar=[sidebar_menu
|
|
|
|
|
|
|
|
|
|
|
439 |
],
|
440 |
main=[pn.pane.Markdown("## Masseverlust"),
|
441 |
masseverlust_plot,
|
|
|
444 |
pn.pane.Markdown("## Mittelwerte"),
|
445 |
plot_mittelwerte
|
446 |
|
447 |
+
|
448 |
+
],
|
449 |
+
accent_base_color="#00613a",
|
450 |
+
header_background="#00613a",)
|
451 |
|
452 |
|
453 |
|