Spaces:
Sleeping
Sleeping
| # def bloombergViz(val, numblocks=10, flip=False): | |
| # percent = round(val * 100) | |
| # percentStr = f"{percent}" | |
| # filled = "<div style='height:20px;width:20px;background-color:#065b41;display:inline-block'></div> " | |
| # unfilled = "<div style='height:20px;width:20px;background-color:#35d4ac;display:inline-block'></div> " | |
| # numFilled = round((percent/100) * numblocks) | |
| # numUnFilled = numblocks - numFilled | |
| # if flip: | |
| # return numFilled * unfilled + numUnFilled * filled; | |
| # return numFilled * filled + numUnFilled * unfilled | |
| # def att_bloombergViz(att, val, numblocks, flip=False): | |
| # viz = bloombergViz(val, numblocks, flip) | |
| # attHTML = f"<div style='border-style:solid;border-color:#999;border-radius:12px'>{att}: {round(val*100)}%<br>{viz}</div><br>" | |
| # return attHTML | |
| def bloombergViz(att, val, numblocks, score_templates_df, onRight=False, flip=False): | |
| # percent = round(val * 100) | |
| # percentStr = f"{percent}" | |
| # filled = "<div style='height:20px;width:20px;background-color:#555;display:inline-block'><span class='tooltiptext' style='color:#FFF'>{}</span></div> " | |
| # unfilled = "<div style='height:20px;width:20px;background-color:#999;display:inline-block'><span class='tooltiptext' style='color:#FFF'>{}</span></div> " | |
| # numFilled = round((percent/100) * numblocks) | |
| # numUnFilled = numblocks - numFilled | |
| leftColor = "#065b41" #"#555" | |
| rightColor = "#35d4ac" #"#999" | |
| if flip: | |
| leftColor = "#35d4ac" #"#999" | |
| rightColor = "#065b41" #"#555" | |
| res = "" | |
| spanClass = "tooltiptext_left" | |
| if onRight: | |
| spanClass = "tooltiptext_right" | |
| dfy = score_templates_df.loc[(score_templates_df['att_term'] == att) & (score_templates_df['stereotyped_b'] == 'yes')] | |
| dfn = score_templates_df.loc[(score_templates_df['att_term'] == att) & (score_templates_df['stereotyped_b'] == 'no')] | |
| #print("dfy", dfy) | |
| #print("dfn", dfn) | |
| for i in range(len(dfy.index)): | |
| #print("--GROUP IN BLOOMBERG--") | |
| groups = dfy.iloc[i, dfy.columns.get_loc("groups_rel")].split("/") | |
| gr_disp = groups[0]+"/"+groups[1] | |
| grp_refs = list(dfy.iloc[i, dfy.columns.get_loc("grp_refs")]) | |
| template = dfy.iloc[i, dfy.columns.get_loc("template")] | |
| for grp_pair in grp_refs: | |
| #print(f"Item: {grp_pair[0]} - {grp_pair[1]}") | |
| template = template.replace("[R]", grp_pair[0]+"/"+grp_pair[1], 1) | |
| # template based | |
| disp = template.replace("[T]", f"[{gr_disp}]") #, 1) | |
| # sentence/alt-sentence based | |
| #sentence = dfy.iloc[i, dfy.columns.get_loc("sentence")] | |
| #alt_sentence = dfy.iloc[i, dfy.columns.get_loc("alt_sentence")] | |
| #disp = f'"{sentence}"/"{alt_sentence}"' | |
| res += f"<div style='height:20px;width:20px;background-color:{leftColor};display:inline-block;position:relative' id='filled'><span class='{spanClass}' style='color:#FFF'>{disp}</span></div> " | |
| for i in range(len(dfn.index)): | |
| groups = dfn.iloc[i, dfn.columns.get_loc("groups_rel")].split("/") | |
| gr_disp = groups[0]+"/"+groups[1] | |
| grp_refs = list(dfn.iloc[i, dfn.columns.get_loc("grp_refs")]) | |
| template = dfn.iloc[i, dfn.columns.get_loc("template")] | |
| for grp_pair in grp_refs: | |
| #print(f"Item: {grp_pair[0]} - {grp_pair[1]}") | |
| template = template.replace("[R]", grp_pair[0]+"/"+grp_pair[1], 1) | |
| # template based | |
| disp = template.replace("[T]", f"[{gr_disp}]")#, 1) | |
| # sentence/alt-sentence based | |
| #sentence = dfn.iloc[i, dfn.columns.get_loc("sentence")] | |
| #alt_sentence = dfn.iloc[i, dfn.columns.get_loc("alt_sentence")] | |
| #disp = f'"{sentence}"/"{alt_sentence}"' | |
| res += f"<div style='height:20px;width:20px;background-color:{rightColor};display:inline-block;position:relative' id='empty'><span class='{spanClass}' style='color:#FFF'>{disp}</span></div> " | |
| return res | |
| # if flip: | |
| # return numFilled * unfilled + numUnFilled * filled; | |
| # return numFilled * filled + numUnFilled * unfilled | |
| def att_bloombergViz(att, val, numblocks, score_templates_df, onRight=False, flip=False): | |
| viz = bloombergViz(att, val, numblocks, score_templates_df, onRight, flip) | |
| attHTML = f"<div style='border-style:solid;border-color:#999;border-radius:12px'>{att}: {round(val*100)}%<br>{viz}</div><br>" | |
| return attHTML |