I have a list which is changing its value based on user input/actions and have dataframes displaying objects from that list, I’m not able to remove first ones before a new one are created below. After that it stops, it only creates df’s 2 times and after that just changing the newest one, which is what I want, but without first one. First one keeps staying on top. Any suggestions?
Hi @mict0 - welcome to Streamlit!
I’d love to help here, but I’m having trouble understanding your issue. Do you mind posting your code (or a sample that demonstrates the same problem), so that we can take a look?
Let me refraze my question. Is it possible to hide dataframe or any other element on button click?
Yes, that’s possible! Here’s a simple example. Note that I’m using an
st.checkbox instead of
st.button to hide the dataframe, because a checkbox’s value persists between reruns of your app, whereas a button’s value is only
True on the first rerun after the button is clicked.
import streamlit as st import pandas as pd placeholder = st.empty() if not st.checkbox("Hide dataframe"): df = pd.DataFrame(range(0, 10)) placeholder.dataframe(df)
If you press the “Hide dataframe” checkbox, the dataframe will disappear (because it simply won’t be drawn when the app re-runs).