From 65a21129b1d0048d0d789844781e46ccd6073a3e Mon Sep 17 00:00:00 2001 From: sclaw Date: Fri, 19 Sep 2025 21:39:35 +0000 Subject: [PATCH 1/3] spell check, update station skew methods, add bug link, add dewberry logo to docs --- hydroshift/_pages/changepoint.py | 8 ++++++++ hydroshift/_pages/summary.py | 6 +++--- hydroshift/consts.py | 2 ++ hydroshift/images/bug.svg | 4 ++++ hydroshift/images/dewberry_full_logo.jpg | Bin 0 -> 102354 bytes .../templates/changepoint_description.md | 2 +- .../templates/data_sources_side_bar.html | 5 ++++- hydroshift/utils/ffa.py | 6 ++++-- hydroshift/utils/plots.py | 5 +---- 9 files changed, 27 insertions(+), 11 deletions(-) create mode 100644 hydroshift/images/bug.svg create mode 100644 hydroshift/images/dewberry_full_logo.jpg diff --git a/hydroshift/_pages/changepoint.py b/hydroshift/_pages/changepoint.py index f5d1bc2..2d6acf3 100644 --- a/hydroshift/_pages/changepoint.py +++ b/hydroshift/_pages/changepoint.py @@ -1,5 +1,6 @@ """A tool to identify changepoints in hydrologic timeseries.""" +from pydoc import doc import traceback import uuid from collections import defaultdict @@ -10,6 +11,7 @@ import streamlit as st from docx import Document from docx.shared import Inches +from docx.enum.text import WD_PARAGRAPH_ALIGNMENT from plotly.graph_objects import Figure from hydroshift.consts import ( @@ -195,6 +197,12 @@ def references(self) -> str: def word_data(self) -> BytesIO: """Export text as MS word.""" document = Document() + s = document.sections[0] + s.header_distance = Inches(0.2) + p = s.header.add_paragraph() + p.alignment = WD_PARAGRAPH_ALIGNMENT.RIGHT + r = p.add_run() + r.add_picture('hydroshift/images/dewberry_full_logo.jpg', height=Inches(0.3)) document.add_heading(self.title, level=1) document.add_heading("Summary", level=2) self.add_markdown_to_doc(document, self.summary_text) diff --git a/hydroshift/_pages/summary.py b/hydroshift/_pages/summary.py index 70fe791..4c14ed3 100644 --- a/hydroshift/_pages/summary.py +++ b/hydroshift/_pages/summary.py @@ -57,9 +57,9 @@ def section_lp3(gage: Gage): }[est_method] with opt_col_2: with st.container(): - use_map = st.toggle("Use regional skew", value=False, disabled=not gage.has_regional_skew) - lp3 = LP3Analysis(gage.gage_id, gage.ams_vals, use_map, est_method, "") - st.badge(f"Using skew value of {round(lp3.parameters[2], 2)}", color="blue") + skew_mode = st.radio("Skew Source", options=["Station Skew", "Regional Skew", "Weighted Skew"], horizontal=True, disabled=not gage.has_regional_skew) + lp3 = LP3Analysis(gage.gage_id, gage.ams_vals, skew_mode, est_method, "") + st.badge(f"Using skew value of {str(round(lp3.parameters[2], 2))}", color="blue") # Analysis and display if gage.missing_dates_ams is not None and len(gage.missing_dates_ams) > 0: diff --git a/hydroshift/consts.py b/hydroshift/consts.py index a092df6..143d235 100644 --- a/hydroshift/consts.py +++ b/hydroshift/consts.py @@ -42,6 +42,7 @@ PEAKFQ_URL = "https://www.usgs.gov/tools/peakfq" DEWBERRY_URL = "https://www.dewberry.com/" GITHUB_URL = "https://github.com/Dewberry/hydroshift" +BUG_URL = "https://github.com/Dewberry/hydroshift/issues" ADMIN_EMAIL = "klawson@dewberry.com" ### Text snippets ### @@ -73,4 +74,5 @@ def svg2text(path: str) -> str: GITHUB_SVG = svg2text("hydroshift/images/github_logo.svg") DEWBERRY_SVG = svg2text("hydroshift/images/dewberry_logo.svg") +BUG_SVG = svg2text("hydroshift/images/bug.svg") MAIL_SVG = svg2text("hydroshift/images/mail_logo.svg") diff --git a/hydroshift/images/bug.svg b/hydroshift/images/bug.svg new file mode 100644 index 0000000..f8d05fd --- /dev/null +++ b/hydroshift/images/bug.svg @@ -0,0 +1,4 @@ + + + + diff --git a/hydroshift/images/dewberry_full_logo.jpg b/hydroshift/images/dewberry_full_logo.jpg new file mode 100644 index 0000000000000000000000000000000000000000..b35128e7a011075e2366434c77af6f14ff43aeaa GIT binary patch literal 102354 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�vU^^7UC#O$kSQzF47qj19k;MwpX=$ke^qXnNoL*E+duJ4U%#LtLNga z31iV7q$?*Lb82LUKS@0qSbUz7fq{*GtYB1+mfKMPWk5tI1qzv;uYO3=CJ+Yp>^$;> zI3H4F5yR>+pg)84YvZaZ=vw0AnDkz{hv2sJXN$OrMR~~fTx)J(DY&R`{XzE zbh4~mv|r{D_R4PIwSuis?SJ5duYxLL?ZSpF4h(dGzg262zEV=MFn#3DYXzK84kD<1 zQ?c}iIPwRY%tp^WCv?~!x!Of1(+>Y>o$1%3_c#8@jjgKii{3gPr>0FN2^f!F|9Qn5r{g1`+4NwT{h{Bz9SVA=} zwBlR)U+vF^XlHg=E&WW z5i>ksvc+Z7wXhCYQ@V}Kt~N?|>5QoU_mD?}CN-zm+6oD~1fNz~VPCj&+nTe8fSA`EIuN(lY9dtY5R!MtD$LwDH&fVYPr4!;Tz?mMb( zj*`K8nB$>&??5 zCJ^N)p#}!wS0Y4r_a%DXe86{GO!l7g?iUf4VKCU{&Yu)x>m?{nM_XO*lH%GGcFB>D zS#~)5dgcuwV+UjOq2|M*VG4EdU5t^bO<7sI>k^ZL&u#hWzUYpXv}l3Tlf%;=d=p}( zPB&iJdr)m1;7J$K(gfjA(BvtQ1@%KCYTcb&`7&D7~UG^G8)P|?6smnq_7bw7r_n( z%BExDzeUAnW!mtdVIp3mdqLE@!h$7!g6poq(+)48iP^n_sr6aVebNWs{nPye!!0%y zGRk9@;_kjVLmhdCt?*_677-z{hwe5=khPE`jPB?;KP{+%GCs`u8WLxw!-`|R#Pzr{X4>iiCN562|kt)Lw&Br(Fi4`wa8r9#DqlTPl? z(>2~rvW$|8IJt9G*50Mne#sMIyRNxQ<@`AJPJi}+WuJmL(B;nnpzxF386~(5QSG(a zXNXh_+Pz1|E=sAW-Hou9*BDr6!HGv!%(^?Tl)b&?_<_Ow2Wq)%cA;qmssSS~#hTWG zFy}n@nvTBDtk_&%J!IzAb1$sVs?0`HZU4c<6g5TY8cq9VOPgD0iSdT@xfTgN_{$W6 zCu`i%1fG5u-$iw#*-j4@4VrkIH;dl>@&LEwRR6>7$Hu|AVgB6;^Tc9?izug0h?hanEf0>_qheeWkzy7HxNcNUCep6I|^Z3D5)s-$c0OP$=gh9fcUcm(T8yI zQH5r}dtrnd;6R|B88k}Rz~xSF5@h=7rp^6e-Z48)#uiRD1QId!gm|t z$|@oaS*(u~OxZ2GczsLc6GeM7gf~2j|L!5V7}(tB9gfO(>VPL2l{_qrG`LeivNQ3QX?af5c4Klq*k?T zPZXQ$h=nOf?Dt`#yVLes9C%WpP?cge)j7_FJu&uAV!m+=*O81AW{yBoI2J%WBt|gi zM$>SuG8dmpykE5JT*~=sEVRedv&s4UDtf0wx&B(yrYis%M2lIw7B2>qFz|%y)9^e# zx&bOK|5m_})I1r_#MMKO()TfIt4)Zb+sAO)Ei^u3up$$}DD}y=<+Uw4@U^`6Y0t_TbXc#jyAp4McfNQMlwzMU z%R*^7w1!0aK8luU(DblluUKi7R* z!=Na+8xnZ0jyR(a>uxy+A8}yWT_AO&Jdz@S6a-0ZzUVi~mG06>$I8~n8hRNv zwtcJ3^-smJ4=`~EuEe^6VdrnJ{eJKN6VR1`z2*^!1Zx24deB>&Ylk3AyYbP2Goyh= zOhi@owm4s}y?)Ae8w7{~o8#vGzGd@*?|n2bgHR0oi8fquBv{h8FSbX+<74w6t?6le^@51p9EU3|3_=)5NOS|Peq{Htzc!xvjTy1o{G3G4R;VUEQ z4$7}~e5oMo@97U114|44QOCRvXctM|FG__Y}qUIME<+(Ob^b}>4bOq}8b z{jzFhVM@fsr(*@4;A4~UAV^?@z!?e9M~aADp;f-Ab;m0Y(~s%+bl21~w;%ecnX!my zQB~YC05I&bWoQ<_iW@-k@$?5x6_hft{X`0%%Z-ndl5`Xwu3I5INVtAaYVSwMZPAP) ze%kZ;o&a!oH)U*=lrrUcFDTupE^F$dTAsAA#Z!^`)1q^qFCV#56~&^oqlWGBzijBH z0s;}h1a6|}eyZ2O<*rbD>4E3zdUUJdL1@5GUREh$YGmqSK3-Hv+3EhBEYvg4eLrk1 z8)W9;nyGk%%{#B7Ui4LtL)>&in%E=a3-4h7KO43#*3?HWcKj>adDgr zTSJo&otOlph?Ni^WyJ+8h*LxKJ77WrSEJkM4kz-4Tg}y7o~fqV;Z3|h7@rm@Jjz$s z9o_jZe(p-wtzJ;G>Tt`dQlB!OT6uD?)Y*EE0 zvv%NBfbdRF%oTmN+ixdR<9E_v+flYD=M)9}aWqvuq% zjXXYnlEQiFI1PYL)KJ|ZefS-%w}7NE?!+J6>&~>S(KsA)G_-kd%(qLo!(Z+!_upgE z|K8#5Ll-5@VVR#icfMnYcv=907WoF(ehX{pL1{Dt?YdxmLCKJSsZ8sPH(FyFz#+ESICn|j#vni5D+L=#3glnM`IWxlN-{o<6ccxr$*tJLrtZK6IHk zbc5&D`2;zl2$0M~fUICasWmYPp6}s(i8_L{t?EjPvQd%zbjIxj!{vEtg|+TwncHj( zOV#b8KPu#Q;$AVYIijb0I>4EW;P3kjJi6#kGp%_s!)7$UsQOY;%l;gBjPWyZo)lY_ zoMZPyt0hXZ<`bY0ot$T%lu1<;vkRA`!oKO8I4nne3LhLfY5_ze2K+d>lbE5FzZhCK z?DUIWz*dYlW9v%1!lz;%=LNk-H*L})?b{qIoQoR0uH0FC9dfg8+we`CwL;pl3b7;R zJ|6zLjhDKsosY;9*0o|C=u1Y~x3Pz1Qp1gVlSZ3yYsh^E^trPQ~+t!KXF7f6)#*pKb(8@pw!&hR7H zbn@X?!5Fb4*&P6i=p^|s6mXy|Q;r9|Z7r%kmoOszky7qF%VPU5wJ#8?IM~H?KtJG* z+i6FN%0Di^+R|@9=cyyjKi1a3%;M!BEyT5*`nsCg21xxi9lo6v$<2GgQrj%jYJ?=J z1#{9vj=I`%e~ptl;(?tgtA+~0on0^XZa?3Z`$qekXEcA(qQULWP>&ZwTXGa6zQj?a za8h>-uSuIZ1YM!+PQJ1u_I(#&{N3%^gJtL11}J73Xv!u7{FgN>m|URy2tiU1Hv}r^ z7dpsV81V8V&92ZoVjqOIa-*&}IJTN$x}-E~woiStXm!e4HJ~=~>D{+3eI=jW$A(S8 zeFozR&){Yy>H4@)E>KYE=Mi35I|7!pg>F2ydGRs$`wa3x)~&Zzh$>V1Y!{aTHTx`2Im$)HJBz*X+s6B1#z3h9+?}BX;)ka0>r*setl3DeToOP z%?|)lB!K(ygAk+52tc1BfRVocLEpQFl)E5icFlKGVlu{@EHS}c(v*E@@1Wl+P#0R< zv8AO;U7Hg2+#5tUvVNqYgC@RA{^WbUxgM4iGGCXE@@5Z2AY)t1UuP9GXoDc4YXt1X zCA0s;0m}n6x%JZ4+=;Q(_cZ2H|6;(}tevW8lh|NCKft*TDzLu|!KypmI}WP?upP1l(#e;MLM3v1O#@+{! zIFf!Hd$-PIIUD{$^4eQ!W6LCU+WhF+lfxH(ybsg|jZ)=X+V0^_aZf%8m%s^d7yL2W z$&t=P%`C|MczAXg=+sl8^Kw z6m07<1*%?FC%#&bs>8JXK^F_YfLW*oFDt_-c&LSmuNmx9;JE=vMM)2sP%Xw^{$gN; zBDIUV=k6vmMp*Zss0z8U%=-9Nv+TAO&!Yfnm-+uuGygv`AyJSFRg9`hrJxSOPRp98X(1DigO-mR`yZnh`%cP!gzUTb&5bHh{f{ zn@EO(x)yMxtoC7>BE;;{#_0&;B=r?A6He&w2e)K<$p*v}w}4^8USyAyp8>YuSbqQg zZtpoh=uTt7$*`6TqpOJP?^M+Gbvy{-89Kl;9!PW+|6NY`SH@-#rQ2Mme7E2zpOaY$ z;O1i}y~Q461c-auHf-UhWy0ll&x!m!Kfdh+; zbFM|yUO4X!mLX}#zBu6gBVBm{5;LF4nx$8J`dt3(Cb-es5alv+xl#`lic6SWn!nYj z0Gli^xf%~9zg_!mYpkBKe_-(A$z`LHVIo4%i;mrpVtJ6H#0Tx29LbmN9eyDi6lK(} zbEKkt+l_q@D5c$}vEPAFC`VG5y&FhOhFBl0&7_O9XX>{mN63|wJK5^)B--sQ(47_h z`peOP_|xH!Y|j_&_%66#Cl+zVyJkSlx{w@7I(M~ht&voAI%H!N$t+Wcp;5&oJIF`~ zSc{8>mC1yH$dVyG)i+XdCyGMW^i!rZ<|mH1#opM_<#p_l`D`OkkwiH3W8(|+Q|Hy3 zU!g1;c=>gGXCD+m%?@HHzgShW<5@dS*D>G1D`T3YEgMNWWW{t(9@PPF6`yzw`msxY zF;s1c0nRTz0NC8)Py|wH8jr^V9B*wnn7j`K`M9l>YRk)WzRWA1P)d&Ue9|=^n1!Dy!&jv1QY%qy;H%?J<*zzZ-&EBjmh_4{O^q zWc7`1V|-qFeY@{u2UKHfMgw6_VmcgJRp@fO%OiOJ<%U>DQZ{S9z0`32K*70p?5H^b z@yOz0U$_%%5?X@HRm#Z-e634~3=`5*683guu+09U_8%7LKmLTb{c(`9`Ws@n4&d*p z%2+!3+D{)s7=0%en}AH*KJY5ncUDT^K{jc%ON z9lJ)!U|r#XlLq7^7I&^8-n;48XZehjyy#&y>Ty=dw`&f?VWvZq zPwWC-A1GR6OMSgBFo(@M=3kiP0t$uz;V#gmN)NDm64PkLEGg2B>a~?MIiTGc^~+qs%RoEkaUz*PH{lp~s-#TJ!N8lcFR&hT#a(`g{7}%v#Kzx;GgNLn&$s^HvR}YgrSFh3(6L$B6pXG~gp7ZzQeYTAb z+LD&HeE%&mhya;#l{jPXLPp$s(dxZt9`CeQ-tCYbNB~h?F@y%q1Y*tj)ngzW&iR^4 zB-ztJNK9&>W^L5l9C>-PrXM?WQ1jHJctVB2HAYte?iNd%+%LaO`If#h= z`!^|G)?m3C?3?zeaoQHN(J;>3)c@OdLg3^0Zmb^n4w^g2kpt@o3I1drKY^gU=G3&M z=;zuA*)O zQwb&S9Vn+gox6qUMq9yel?)XP>dhvg-i(1lLME#()3hTAgHLzHJZYbowF(I;XXY#l zyXbpOf6W1)I|*>3e;X*KVlPpp@egA>t$>M+OeqhmhkG1Lo8rk=uZOF@4eWW$Z3p^^ zLu0ouoca6% z09bcyy;6u7+>;-?T1sV~IGO~>W}5lYP?S@!%Gx*Sw7L`<-Hf)@7iw46%Jv^na%l6> z!90DT4{r|6`W>%qC<7&mBZ`@{U}(XLmb9TBVwO7;MPAQ7GcSbF)9ySO(#}1lS5KKy zh1-QUJnAsVa2+3UBI)oq@Rn3z5_Ka{F~1FotGlM-iNP5M@79+0?%?5o4n z|3mIAB2q>a!FtjKx(kAexLN*E%_`dtbYEB`1hNziv}N$Rd@nK;aV%8>dmJscZZF8r z%!7)Gp6{$_HM{>sazEwywP@pz6bCz@fB^mbkyr9=M4jN&yAzm!0Nc@ofng(oUGwA8 z$Ym2YcbI^0Cc@>|8=%dnEp)?RGiw#Gq80!Y9Rv2yp9d)=7}bVr?uS7v*AhcQt-k=T zxyN3A#B9aQiuQf5Pkz!f|Q3OLmB~|O;kRY zp$z;PAsJ-Kr*&MVB*=loApWXrgh5^iaKWBqc?*9$!IpjBGO4;ioIBv^3b+jXBNp!e zLV4O?l{e!8g{nuqyj;?2I9$NY!gckF_h)j~fp@PE9xHZ+Ql|Jo)!5Lzs|}7{aO^GR zc2!tVDb8c3eL~53gu+q}3b7h0duiRq5gMm*r+14lyLLT^+V8Hdn6f7{W8=GE=dpmC zQ36zrn;V&^=U5CK!7;hyS7N@*(?~sQF~B6V0-z;rO%bui0Y;Xg#gynF8*-EM=p|db zWu)eYT(BMHvUuU*Ukpr@fd4KaXX z0Vx84f`}kRYD9#9NKxqsQIM`6B47j(uuG99y+nE^(mPQR=|qZvR0TpP0+K~>;Uaz$ z_uihp&pG#=JI1~D8~4ZgvBFSDveumQ?a%wXuDt++G}q_ubc%2opf%94`!tIudS>Tt zln{(w2$&5y1fO(DJT`tm*|@g7pFl zsYKkS9Bji&dSJ)GXX}(1H_9cow|z})8BeMF%`#}UrtePtic;3q4fBL^;}4mmeVMXE zUL42+Gd{E6?-N*fIj^U{n;e@nzGmIVDyi_i*5ux@Hf$$MT8bk}FdweROBkJ7R-BDF z_0BTb>EkJ%7i@e{W9(D)hF=e$PkU36i14E4l;+NyEZ;^}>a7eh2hVN)IY2x=pWQ3;4p3tgnP>h9b=e-8T1ac)sm&lb7)z8k$G7 z3{aGTmwf>zydd5hYaC)-3CWhoFbkU72O3o+WILw^I2UK}NClnE-r7c8d)dQ^wma{h zaMm05gQ zk9$QKr~dR!YafAs1AM4{oc`((?Cic2%}iXVSq zb#jsNYnR<4Ty?u1n@RkywosoVz%T~+%vmj^CqnCqZQ_Wu3D)khxwVy^Y;sa^d1HA_ zBQgT4D_EKMQ}jWp+Q)gg3}~Z)^fMlmTH*-NkD61O$h0s&>rY0b!PHm)bBa;9QdZeX z79=0PJ>SxInDrpush7(2E_F{&n3^Mpn91cE#rNE2#tKOdWHiGX2SLWIy~DSV2FN*s zhCVqh9#C%A~~mXdXlf++uv6dNY1T(Q6DEK(YpwueCDsvZLBK@TP;0b0FV z@;9X2ZE7J(%$pu@G0mWEJ$WIvYmTcoGiEhg%#PR^Vn5PC0hf7j3sx9*YE(JjIo45~ zM-^A$IeE6rdJwajng73zRuC_&^sel!2QslZSJkdR!)LD6Y~ZG zX2U&(+)P_UhkqJjD2{0 zX|Um|DC%RqiOSD6&H-J&oB_s$f)1Wmax)7qY3cU7$j~5Mb`h^sgMQyL?`q$jh90Jz zHZF1MiO%`X3OvBt+u&$d&^I6y@Y5P}fS%Wn3m7tPT8-~N%VeCe_CR>K>F(~Dx9mZW zKries`25zaB%v7Lx`dQ@kzbo!Dly?HV*-Q+3)5 zsCCn7N-B>TEiW87dsemH(9oWVNq>WX_UIq(>whKVYh#Il%3{&Sm4>ME%CMLT@ib%{ z;bPS-t!y^<>?Vahv+skciJ>U~93D1d)2zq#032Ng=*OiOftiY!PNaf_HN|a(@{fe^ zTxycLwW{xUiTPkg2Q`B1{mjva z+4MI9r{7z9c=?EF`-VE%Y?sbFt*xl<7Md{0a*6ZKZ<`KwB(sWzW$5B+%lWPwHnrXE z2gXWX7CzK&k?uO7Ii}7XY0J-~I7*rWthzJw{1K29RijtY(^2PJ#z_*UebeFUYlHoM zdPWTQJda4~cnBfSzb2gXQtbYGfynKnTAvcQ#mqASoC zt|Q<{ArbnkR}1#B9;v+y-I)6qZ|nnQc&!4_hS}&b*WICvFBqNzPyxbm9GB^yuRfLxewPejIb>>5o*?K> zB|u}3G5IGqvo6lH{NRJu^^kHG=-)+ZGN$`EXUl*OEbX1OIRqw{R2Z$6%;xMq^s@RI z^9T8`j&jzi0+$DmuakEh7!8v*EJ4E{pg9r6k9*H@+FqIZZX7iMBRxvCCrecrpf(TMj- zw(s31_u|jHE?m2YQ$ktWql&q{#OA4gb5#OB$T-x^gFl#@zIvJTxD!rHNA(Yrvn^)s zwr7Z4b~GzND6VdrYwpD3nC|9Wqgnvdv@x{E2gddvKz$f3;J@FAchY}S;)st zh@qq>u_4%))z*GWl+vpfYZylwuF`hP7~wj`<<{s(**sz;+WihO@MisL<#@t>6qWG( z>X%`8>qrt)76#|n_^fc{S>(X=5XZF=bEdUS& zA|!f z%&ODVW9~i*o@I$rid)aHqR#AkdtLnm+phWy6(aAQ{nws6*HbIUPvdsC%K{2?Ky;5% zhB0lW`fYF>OxPz>Q5IxP%c4}EH7Z>%-V?&7mk zym&y8I7nG*TTNj&zx7rcdCt%TXM7zM9}5i^Z3(&x%T3(a-26%>8yEJ*hogCqvc&{h zQ;nIsW0T~U)Y+JeZ5uw!yIXd8;1dsGr1hR_hQb<*-o*_dKN||JJnB6Bj!)?FRFg;S zN+Lp;q|jVW3Pe1^JdjIsa?IUyj16+!dobatN1Ea8O~)^V!0W&k7rhcU3j@K$;7)JK z$ClPriYRX7Kl1s%ZTguT%oTybA-P9k2(9XhGEV<;1%8X2|M@>_oah)j1_Fa@P!LKT zDME@m%#C`NY-z4Hm$bE6&hqPcd7aoP@QA-ITt7_n?9MOQh6F5t+C3#e{_`h?dngtNB$~c&|p;uJK5XXPVPm z+YSU+k$QM`GYB9CKQ*iT;36)VPKLP8bvN>sB*twC%{-kRw~%<_Tw5Gr|0B`YWWc+) zVyRkMP!UYepo0e0_A~*`;%dldC_iqqF6PZVbHIqSFK_nYa{wA#k9|UhLinK2kvM>6 zQgL@t!aL!79iv_fswPdAX5LtAJN_{)^j`Bo_|1zBP0_`{r!D$?U5y|9@{!g+rids7 zw3ob24lW0zKErvf3T?W)v%_I0`eb7<$F!X5hAfMBI;{Lpymm6*K0wwVwLfiXB;(h z#&3A(zn_mQstKxlJuNOP`dR)cH=Am`iR>S4?r+K;AQvW-|i~A_iQMa{2qlU=2DK=T%Q#FfKa?C}6i3!->6N^7hDu@|MuwdLtvowU7 zn4gfK@g_MKq&13OVGcdt|=2ZOF8%j?*@F1VKm)H$v;)iw?kg5fvV=o!e0y>l~gu z74Ca?A@SXt?Zy+_oZc=IE;2Y`du1Cf8X22V)@#FG>E=#Y1|!qkd^}GYm4x9w4ppw4 z%2xf;vro$*s{stxWf@v*1@EJut7469-Q(}9qj2{e zYG8lPDj0yguIIG~ls+?4}1&=Y(!-AB%#^rGH}`8=(S z>Vpec)Y7zqK9tpC%h6F-2yibCBq(eH3|C}fq&~&5gTx(2Ix=YH=+Sk8@5Ui=?Ca6Z zjHb{jq=D1+?mWV1VYp5YgE<%22x4?>>5C1Ev+k#g6BIZ+UYu0Rw0t?wm_c_KQ{@mq z4vpN0NWkaRB{q#1mjX>iid7FAYciAW)R6(XwfBz3a|JbTvIaFm8xBYx3vABi#NYk( zJgb0oRfN9P04S^oWR)&Qb&o%Ze^gz`^*CW^o8J#6wfA2>S}t3Sec5|aATXiEl+Cjq z+rRekVPu50O}ayAfyq?=ZT9{?(=$l|kM zta9S9KRM%9LGTY(PY^;!F1nn8U9j}1=r7?HL54L}dL~cga@TmKDVR8HFA^AfMqV(q zRFnbcO9IA;C1RsqI~FiF>bS%W!g5BDJM){%OaEdV+y0I=|SGx+nx%aqd;4=o)iR_(3jS#ZdvA-o0pZ9@5JaAyxi)Hv2qj4^rQQTY0XC2 z+3{vY^GTAx~9KMQ7QgvP;YU$?@(BZA`Rw~7xrlLjo?>-f$F zQf_YcDNI@++uSC$U_sfZ9r)Dk;*2Z(IQH>Ks2OkCQ~eq@vAvrmLEGe6Q@`TVGh0}U z*8^gKhg*t|-3)xD72rK4TqbhE_tn@*Q&hzU;wLjV;6R?!6LB7EFtg$hjQc;1F8QIthrLnhpvI_IA}U>StZ5Is<+MIV3>|_ zokp&p==_^Q<({~)Pf zw<2qNKbTDPAP`J36A`V&ctgbRKmPmQ4Iv1?-U1;o2A2Q=jBh1QZ#K53880+|6$Q%q6a@|fuO)D(&o~Ng zdO$o)!i_2+GmzqgF?q?VUS4M15&1&AH5dhUtG3Z>LKef`blj;{aYT^Bb;~t08m+xs4ffuD1&tv zo55nI1XDbW9`W!&_fMC6h;_G=(=6ES;QKZ1W4_V{+$L}tpF~88UuLD z_d(dicAG5OwiQ%v6DBOMt;~HF)tIXTQs1P%;6+dFoMDg;ErW>?yg!xgIxhyX0LO$A zVYrF3t;V0=_CmMb*ry4pXQK*DKPkA^NvuMBjT1FZv*!(A(qD}RwwHjcLi8X2T%fU4 zKXu1#P0GXDx1bYcP8&V$?0zFm)R;ERz3SIc#dRkFn^gW=v=4d!pcUep^$jOLB~!DN zp$7_@`hSTUmH@jA85zxp1_Ogl>3KO*%eo( zUy8jI(?~fiFBOtQl@|;1eItoz~ET*I|zGR#8*Hu@%C06B~sI1O3gnxc~6`jMt!alEm; zIL~s@buJ*$Dpw6Y^(PkG+A}y9>w9OH*um3t1<9bL)X<0L=W=yy@H5&F@$i7|Cs1gO zBEzr?@(CQ)@u(PgECtnkgFPLIfn<7nl^xhM|4m1^^DM*-5cJ?syrQ4 zK7NiYAo)jF^Oy6Qa(hTlzek3fRZy#dc9xyh`f+)e%Ne4%U?a4hzWIw(PBNy ze=-@=ZWq^Sq!{`H+B|yoqrwPdV^MX0N4So z$-SrBQufe;Cw6O8#hE5dbj}U?G6_bc`So=ZFLF+n=fKl{@yMs`kX690iQsP#+A$dT zY3|20>t=N5OLdZ_g&O8~#Z3xtD0|*E$x5x;+a}*6VJOSnm#$P#_2JVGVn_^c=JUHj5F`OE2v8$c@gckMbip_Ph^cNEd!e;N+B)Q&@*Yh)l9$fW=1R3tJ*t;8=y327&BX30`Ewy5 z;yzL0YSpQr@&wzB48EFiM+X*ROP&;=PS8NyjW@8Risn{$Z+xL0Kt>(EA5d1?=vGH6PQOA>e zq-XV-iX6?{*HQz7PJaBV9WL$6dSEC2Oa3{jK=bohuO^Spy2rcf4)_b)R-LC}<>)za znBm{t-?aY@}{0ruIS&S)mJY4YL$M5Z`*s3*+qDMaIK(Kq;=@;W$eocIw?><0Uqh(4xtU*>TP8C~)L>4Odz9m}F}Z#YbfI^29XucII6M?cHSY>l zom3MlZK+UqA48Iv^4~CnE?jBK!NGS~%4=`Pmki^?KhE_TlUDaIT z5bhgn-?T%GJ%21l{o5PTG$;YNk{GT;I_S1?q0qnqOtS37 za1zkp{=7Ad!AG6T$ivYQxefoSsg@B^d zyQCa8!HA%1N9t2W$+3XQ9Mi^o7TTLb<&&S>$1sLuAIq10SQJ0EwXC8n#03-d3IH#a zxAFS}7V`$zKilI(h8ghrR-ni23VI;~aqj}Ji4mC@y>}Gt!gC9!Pvg=A*&@o#5lmkN-sl3^`eBKEfvaTv1A2riv3GmTpRn*)tZMzoT0@-iqSg-cD-mi zv?1-v_8mzV4Do-=hw%{g{ct<){B$;INt+FAcOQG49QzP0qj&$W{35p&WiUv-}DMI^Jpg~Hj zLCWIPa4ERASi(gpn07n#an}RGC|!DAsHXiFSYPLs+69`}*R>~^@=E?>gN60w$2Oyo zHIR%p7Xj-2m9Z*FdPw+_PyA(T`f>_DKBk#Ke-1k_`b!CPA4%hts^29g7%pOfIW&X; z(G|vd;D~Pf`LVyL`rpGTQtv!W&tR0SD<4Bg^2+7+3&x9Uf0nf0!U$Z$1VElefhv_e z`Ir&}n@>CtPsWXDmUqsjT`=|=H+${I<3Zb;boktC6X@6CRazTQAkcf;88?tx$dJ^H zG>q3+&TI7Cs6Q7FARoK$n$=bztLo57sSu3@POCquLV^_mngc{LV_>~Nk@-~p_>h=k z;VNKyUPae4Ja?tpJe#=?#9ET_=-~4Kv)l`XiyYgxeaCS6bp7K^|MDesFSR9N=w*ol z9RiR>@UBenl3Ww`ehXA_EwbfeSK4m#%dZ7EZEUWpscBqne3c>KF&7JK}1BShr`&}F4r>;2#eBison=~&F{EED@NPbCVeSblLq+Jw$W_kn)A;+s+ zrr+M%`Ge`vG27sa&_w2o2c?}aZrWTNO9fWTjSsKW9B=r9bX<4aK-%nFPq6KjO$hNq zzhEt9ahJ`?JhB!A3D3%ahUg|AS!;*nK8L)C1j{#kkB-{JnqI%Y=?D`_m7n?cU0kXSVcaOv1hg_&(@E{iZR0{2!4(RsdQ1a6q?4TG_6ZY z!#NL;)y-QSuXV_j#B#SN+_z+JY4o4}-oHtm>B_Wq-64M1u5?wRdD?YG^7=JTMzQ_< z1wJ=A8d{+{wW34Fv3Pr=qW5!jL)u_*E%w7TU9n7uumagAd;2|*Du$)7{MvMe)I#fd z^GW6Ke*IZiX*adZK~L>W zT^N@o7#|wn>UQ+i`+rDD0BQV9Z`J~IK>TMU35udokkR=G0u@6=_C~2VL&lTX4z>|p z@fR+cGamc8+#>u~H1h_7cdG&zkP6?TrVHFkTrI>IGsfP7)}Z~M&opENia{@3qm$Me zl0Y(2(wNY3h)k0rOgB-n--FfG$9b>g%+v_&*8r$DyqUbh`q#H4jzsQYMaETJS9{l4gPOeJ$h$i6&!>4f zSe{N2n&Q0|j6o&~{4w+ZROg7{6c@Mg;3o9(`fRfZdzo3weLbX3RmK@k0`E&1&6+ghnUO;K8*V)dr&fr@#>_~b)a8pVoRRvneM!eLzn}?_sVlveh(sBku=y1en|TsoQ>Pvh_{0BdXMuN z0cW=6oUY};8&)B`oIXu3I9)0)!D`kaO?O1dbQvNwGFWc+s&TtqN53+vpYKBHJ~{u> zU%qB4i}m=E%?SK}g9jT*j56M<0NQaFRbFrhsXvsz<67{dt#6od2-WFen4asa+3!s? zvTK=TFAP_^QtT_`qNHF!NqjeE95>>*=KDXbv!>h&9U%p=PE%mY&DAd&bpOK>u!VvtpOxFU1!VOw z)q%IhE@5>~FN9Ye0@HdxzcqN%1hHM>sE$_-{w$nW2VFXSk>Wya)730a@Q@Mt9H^9P zdfAoda?5t*lzMC=F`5{LjRTdpsEcNJTf8Y8)i}?+>g1X;RknAzlQ-fKHN4~b?)NF7 z^ZwQ3pV8ekUlcKn0NxU3e4!t23NkcN6qL|C;qs2ffq=L>(XmEO57c&^Lm7GMD+2DV z6qp(8z9Z5P+0;KP0HAhrz2^DjVZ1ZVt7l(M$1dhrj7eoEis996A`^m1!JPO-{8_M0 zatz(|SKJjCOOI<>?%ynTXjf5Q6C*ThT8jTg7=2+z=(&t&$+i+DPStu#+F!jx>|yX; zFt(Z<{7?kf`8s9F1S+hvt}Q=a9AFU^H^$=2c(!uVPGPitQ*6wm#|_s)c74lPPy>Kh z?|QhGikou*jtKHO1@B=0sYo@&@qDH5%j5_H-Xi7rgx79LKEWFw?B~wPPRi!%5S25BHa-t?5r&VN#{6KiZ#bTX<5*xAu@597 z*FZ4!T?bZ%Sz$GpnL7Wqfyx&uJtFK7#@5?8Af}D;nCY0C7jZZ)a@8X6SvU6%)&k@F z(ccTKyMS}{3M92h0E`+7g%Y4pv#1GUYJOaj1dHTL7V6MW3*;xqasFW0Q8C`~RI{WGf`g$Cc=1La-%%US;A zEdj9RL<@r;2X9L>LR#rAwB@Jvf*>S1DNa6vdp%|*>ST8LoOrrhXPNAkBbykeeTn5j zB7bF+1_;o6Fx=1q1Ov#myxchP_;jSeN|TBnVZn|Vrp~%277vKvXDxJF%Zw%V>?|Q| z@!$hQeqbuY?{52_?&MF^vuxCbuHrRoy_!yUrz0}r5*P1jTVQl6gKX~IIealp{g^YT z#e{7WcwpW1T;z!6IpHUR>>Ypy0|=K&7V-iz%D`nau($>jq*yM$ljpz-9jxxd*z^$0 zu@K!H%QnS3J9aid%T`OAcTHY~3?B)|zmPJ0q*=l&*~pjjv;+>9^i@Z?Nu1rPM$$^x8CN1mqbF8UOqNM`jN%*aJABJ z^VVHoW{XWij*5)c)|6M7v568qibwG9?rf0|SNeA^qC|$?{SOo8YhP_0Ui~=`1i~;} z)tVT0y3n+P1lqy8Sunn{%DhIemG^3=n45i@4UhKV^sPvzCTz&qRMEQ}{R5}BM_dbR z91VXl>w|Kbc;jB#!o8rdeeK)t-q2#p}(MoQIzVHBzjR$#6O6L4HfI-CjLxu@L_U?TA(>t1pS1pw> zI-wSf(^B_GKL%y5;w4bCixR54he8My;fsQROG}V(a|J4*)PgpNcyEO9thdGTI$dVk z++M}%L+W0pHOGGLV52(Yi+eeI)KPoBWK%J9hh-Zc*s<5|3;i;*&vEi*ooQ;t8S9&J zyXg{zuoe7Z+O>%hje3tghra|yi=q!JJI52Hj>pq}*d79XDxJ(8<$H z-{N$tm2_k?%5UO`=gwSKsfy`T-1R9hwSff7Wa0hElJ~n^B>ehojR&!5A*#%|Yy;+J zBA0t63(N=JCb6?Ka~i5MG3{VFd0_OZ(8q}!|MgY>l{Wd44E*O3@?ZI_fwTDR+~=_V z>1}g2CJx%%Gu#!Zbijno)%ckc0SW?RuX$}k(;(D1nmSRTxKX9RhZ-b0s%prhPd7ig z=`^$I7fGYtphxf$Fnz&*jEM>pelXos)C2LW;eEzUKx`m7Y)=Et2o3awMB$w|!hSZQ z9OxLKrxA|}_S9SYB{5X->bR>Z1abU17}Y}I^bzS&sz^8E%-Je^VjxY0A4TytoPJ-& zS$#ouv({!dfrg!unFePss2g55&9u>Xr{SglrFF3YEB>GLA#g$>$QZz{lj4P9$J+Qp z`Jz^5L4-Pt9mctw52KZiy17hmyz?x`|KU+PA{bs^)7q#RXJ2QZ!4(V z>Bz~x=YpYuJ`>Z6O`N|m$NZC{LBrc2Nk}>b+8=?miXmweQzF!v+LB}wY!vO{V9;AB zqY{~XQF;p?Y?6TARyB=R#DPgE^eLgR_(+t5i7M}_4Vt4**=~PPULDOO{F7%m(ut<+ z1&#%m^j?1*K8EW&eMC2L4}036iczN#p8wt^oh9cRmG>{+4K)0spy8Kv4<1AAoVqau7vfL?08%_gf=gb9d?P5W`-=c_vN^S_Ks zURLKBm)KM-b$oLAV8qq;^AEUW2ksxO3zKKw&9Mt9m8*i4!M*q*1xN>yjJ)}v6a!}* zPa$M})SOS5DGO^+;);klWK~rXX@u9D&beTgbdW1Bl{H^}I}56IS))oP_m$MA7pN1m zlFAJWi5e}gA&vxY>Bhy6MTHl0DGcI;I&$4dIbzIr|cD{GaukzaMjQ68n ztdhsulR9tlxvojHdpCOhOsVD&pedbQUcv2ptz@a}f|5?}m{ln|zH3^U)3QYxyM{Ci z9bLv2t)?ldC^}xixv&g}vcp`3A;~A57^>_y|5wIcpkeL$!~z2BDiRPj|Z$Bqm2q(jao& zG2z&4(nCsR^Fm>o%~=s2&ea`|@%XCWnsMx{`t#*^`>90*x9}4j=(^pQCyadPJvxU) zO!L^W*<<4O#Y>(`zIM*7?-O$5RJ9cfSM83S$olG_*%*d zfBV~N6x{HlsGOtcC#5*>+Ch(=QrnDMt=y=yCk?vAbLS-LNf}GQ+4V|Kpu3jE-rqJg z#P-BL5^d_}JZma=W%84hLhQX=pYAF2a$5KoU}fQ%CKc5#tO@7}lGYP;ki199nu%Io z^(kkmSfjSQBZJYJcYx{w#S`c&`Vih7XNGFjYZ9YDs0fXWT`4q@@?AaFlCh7HPF~!c z5r)Gukzq<{rw_Afm}+z6EQtKR%fkd3Xp0wG0tjXT1=~VwHs>=E!=9Xe;$2VJ_AO63 z0MN{G`)Z0F5Ff)IEVUc0F##i~C|aGxLtD>vNh@aJWdtL$^bQn*?_D0Gak)?4Tm;p2GwfjY!xmD_8YWSOT@#1W3Z>+C6bhm)ax?_tj%KK6A3Jb|l~;$+ zw2XMk9esqI%b=`^kQezLyTPpxDiW!q@>s33FdRB0s;lxH+O2ClWyEme`Bqmyjz$ z<6Q}2u;4m)D2&&-P!jx4w1A!jyi@Z?Q*ys9EA>q;!^}B(n{ra-#|7irUwzyEaPR-b z99a$9(Z7jEzn6TB0W;M#W4Rinyb;*Cs=l9{s=&rXZc-w0uZ5w6@m*3tN6LbB%f zM13L{;S2>yHit`$>xH(YJT|WnLu#u45%={URdmzr+Rigt1z*)Vls&$fVX*S3qq<+Txo9bB)4hRzFxFK0w^CH&iN z{`bZ6>sAIK;RjQG6~N<`t@TO%jV$q}2B-x^=5@N;_`47vGCoh!iy(+ebH)z8TgK)C zBDkkG)|2X`HgcZlHAT4s1p{T<#FAG)p9t}JbYIxjn!s7~J(HHUOe zkR>nY<%g$y6pTPM)1rVW1bHB_cj00KGkh__ z&TPYYYdHOo0j@(Yu{SpR&EE^I~vZTYunP zOoUQZ7ECmX_S+Sc+OOkvb9`}Z&$c3{y)QyRtx|D literal 0 HcmV?d00001 diff --git a/hydroshift/templates/changepoint_description.md b/hydroshift/templates/changepoint_description.md index 8668eae..4b17005 100644 --- a/hydroshift/templates/changepoint_description.md +++ b/hydroshift/templates/changepoint_description.md @@ -10,7 +10,7 @@ These test statistics were utilized in two distinct ways in this analysis. A st A streaming analysis was performed by treating the data as a stream of values and repeating the static analysis after each new value was added. If the test statistic exceeds a specified threshold at any point within the subseries, a changepoint is marked, and a new data series is initialized for all further test statistics. The resulting change points are shown as dashed red lines in the top panel of Figure 1. - The threshold for identifying changepoints in the streaming analysis is defined using an Average Run Length (ARL0) parameter. ARL0 reflects the frequency with which a false positive would be raised on a stationary timeseries (e.g., for an ARL0 of 1,000 a false changepoint would be identified on a stationary timeseries on average every 1,000 samples.). For this analysis, an ARL0 of {{ arl0 }} was used. - - A burn-in period of {{ burn_in }} years was selected to ignore singificant change points in the first {{ burn_in }} years of the record due to the influence of small sample sizes. + - A burn-in period of {{ burn_in }} years was selected to ignore significant change points in the first {{ burn_in }} years of the record due to the influence of small sample sizes. If the flood peak series contained any gaps, the data around the gap was joined as if there was no gap between the data points. For large data gaps, this assumption could lead to inaccurate results. diff --git a/hydroshift/templates/data_sources_side_bar.html b/hydroshift/templates/data_sources_side_bar.html index 6246c67..ee22941 100644 --- a/hydroshift/templates/data_sources_side_bar.html +++ b/hydroshift/templates/data_sources_side_bar.html @@ -50,9 +50,12 @@ {{ GITHUB_SVG | safe }} - + {{ MAIL_SVG | safe }} + + {{ BUG_SVG | safe }} + {{ DEWBERRY_SVG | safe }} diff --git a/hydroshift/utils/ffa.py b/hydroshift/utils/ffa.py index 3b69d4c..b5ffe13 100644 --- a/hydroshift/utils/ffa.py +++ b/hydroshift/utils/ffa.py @@ -15,7 +15,7 @@ class LP3Analysis: gage_id: str peaks: list - use_map_skew: bool = False + skew_mode: str = "Station Skew" est_method: str = "MLE" label: str = "" return_periods: List[str] = field(default_factory=lambda: [1.1, 2, 5, 10, 25, 50, 100, 500]) @@ -41,8 +41,10 @@ def parameters(self) -> tuple[float]: elif self.est_method == "LMOM": mean_log, std_log, l3 = l_moments(self.log_peaks) skew_log = l3 / (std_log * 0.7797) # pseudo-stdev - if self.use_map_skew: + if self.skew_mode == "Weighted Skew": skew_log = self.weighted_skew + elif self.skew_mode == "Regional Skew": + skew_log = self.map_skew return mean_log, std_log, skew_log @property diff --git a/hydroshift/utils/plots.py b/hydroshift/utils/plots.py index 07ff532..372e307 100644 --- a/hydroshift/utils/plots.py +++ b/hydroshift/utils/plots.py @@ -230,10 +230,7 @@ def plot_lp3(data: LP3Analysis | list[LP3Analysis]): # Formatting return_periods = [int(i) if i.is_integer() else round(i, 1) for i in i.return_periods] - if i.use_map_skew: - skew_txt = "" - else: - skew_txt = " (No Regional Skew)" + skew_txt = f" ({i.skew_mode})" fig.update_layout( title=f"{i.gage_id} | Log-Pearson Type III Estimates{skew_txt}", xaxis=dict( From 9fd267a8866b93f64ccb4d3b3c008098eca751d0 Mon Sep 17 00:00:00 2001 From: sclaw Date: Fri, 19 Sep 2025 21:39:44 +0000 Subject: [PATCH 2/3] add deploy script --- deploy.sh | 12 ++++++++++++ 1 file changed, 12 insertions(+) create mode 100644 deploy.sh diff --git a/deploy.sh b/deploy.sh new file mode 100644 index 0000000..1517295 --- /dev/null +++ b/deploy.sh @@ -0,0 +1,12 @@ +#!/bin/bash + +set -euo pipefail + +source .env + +aws ecr get-login-password --region us-east-1 | docker login --username AWS --password-stdin ${ECR_AWS_ACCOUNT_ID}.dkr.ecr.${ECR_AWS_REGION}.amazonaws.com + + +docker compose -f docker-compose.yml pull +docker compose -f docker-compose.yml up -d +docker compose -f docker-compose.yml logs -f From a0cd90b4d95e493aafdd4deb9110f322dc154a6d Mon Sep 17 00:00:00 2001 From: sclaw Date: Fri, 19 Sep 2025 21:40:00 +0000 Subject: [PATCH 3/3] increment version --- hydroshift/__init__.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/hydroshift/__init__.py b/hydroshift/__init__.py index ae73625..bbab024 100644 --- a/hydroshift/__init__.py +++ b/hydroshift/__init__.py @@ -1 +1 @@ -__version__ = "0.1.3" +__version__ = "0.1.4"