File size: 2,788 Bytes
71c0779 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 |
import streamlit as st
import pandas as pd
import random
from auth import check_password
if not check_password():
st.stop()
st.set_page_config(
page_title="ARL - Pilot 2a",
page_icon="🎆",
layout="wide",
)
df = pd.read_csv('./results.csv')
print(df.columns)
query = st.experimental_get_query_params()
if not query or 'id3' not in query or not query['id3']:
rnd_ind = random.randint(0, len(df) - 1)
# id = rnd_ind
id = 0
st.experimental_set_query_params(id3=id)
file_id = id
else:
file_id = int(query['id3'][0])
st.experimental_set_query_params(id3=file_id)
data = df.iloc[file_id]
# st.table(data)
def show_story():
st.subheader('Impacted Story')
number_of_story_lines = int(data['Input.number_of_lines'])
story = data['Input.story'].split('. ')
for i in range(number_of_story_lines):
st.markdown(f'**Line {i+1}:** {story[i]}')
row_name = f'Answer.line{i}_changed.on'
print(row_name, data[row_name])
if data[row_name]:
st.markdown(f'<mark style="background-color: white">{data[f"Answer.story_text_{i}_changed"]}</mark>', unsafe_allow_html=True)
# st.text_area(
# '',
# value=data[f'Answer.story_text_{i}_changed'],
# height=20,
# disabled=True,
# label_visibility='hidden'
# )
def show_data():
col1, col2 = st.columns(2)
with col1:
img1, img2, img3 = st.columns(3)
with img1:
st.image(data['Input.image1'])
with img2:
st.image(data['Input.image2'])
with img3:
st.image(data['Input.image3'])
st.subheader('Entity')
st.write(data['Input.entity'])
st.subheader('Goal')
st.write(data['Input.goal'])
st.subheader('Story')
st.write(data['Input.story'])
with col2:
st.subheader('Goal')
st.write(data['Answer.goal'])
st.subheader('Condition Necessary')
st.write(data['Answer.condition'])
st.subheader('Altered Condition')
st.write(data['Answer.not_condition'])
st.subheader('Lead to Altered Condition')
st.write(data['Answer.not_condition_ep'])
# if data['Answer.story_impact.yes'] == True:
# show_story()
# else:
# st.subheader('Why no impact?')
# st.text(data['Answer.why_no_impact'])
# print(data)
from api import show_likert_scale
done = show_likert_scale('step_3', 'Lead to Altered Condition', data['AssignmentID'])
if st.button("Next", disabled=not done):
id = file_id + 1
st.experimental_set_query_params(id3=id)
st.experimental_rerun()
# st.table(data)
show_data() |