Streamlit
1 Introduction to Streamlit
1.1 What is Streamlit?
1.2 Why use Streamlit?
1.3 Setting up the environment
1.4 Creating your first Streamlit app
2 Basic Components
2.1 Text elements
2.1 1 Displaying text
2.1 2 Formatting text
2.2 Data display elements
2.2 1 Displaying data frames
2.2 2 Displaying tables
2.3 Input widgets
2.3 1 Text input
2.3 2 Number input
2.3 3 Date input
2.3 4 Dropdown selection
2.3 5 Slider
2.3 6 Checkbox
2.3 7 Radio buttons
2.3 8 Buttons
3 Advanced Components
3.1 Interactive widgets
3.1 1 Multiselect
3.1 2 File uploader
3.1 3 Color picker
3.2 Media elements
3.2 1 Displaying images
3.2 2 Displaying videos
3.2 3 Displaying audio
3.3 Chart elements
3.3 1 Line chart
3.3 2 Bar chart
3.3 3 Area chart
3.3 4 Scatter chart
3.3 5 Map chart
4 Layout and Styling
4.1 Layout components
4.1 1 Columns
4.1 2 Tabs
4.1 3 Expander
4.2 Styling elements
4.2 1 Custom CSS
4.2 2 Theming
4.2 3 Adding custom fonts
5 State Management
5.1 Session state
5.1 1 Managing state across reruns
5.1 2 Persisting state
5.2 Caching
5.2 1 Caching functions
5.2 2 Caching data
6 Deployment
6.1 Deploying to Streamlit Sharing
6.1 1 Setting up Streamlit Sharing
6.1 2 Deploying your app
6.2 Deploying to other platforms
6.2 1 Deploying to Heroku
6.2 2 Deploying to AWS
6.2 3 Deploying to Google Cloud
7 Best Practices
7.1 Writing clean and maintainable code
7.2 Optimizing performance
7.3 Handling errors and exceptions
7.4 Version control with Git
8 Advanced Topics
8.1 Integrating with other libraries
8.1 1 Integrating with Pandas
8.1 2 Integrating with Plotly
8.1 3 Integrating with TensorFlow
8.2 Building complex apps
8.2 1 Creating multi-page apps
8.2 2 Handling authentication
8.2 3 Building interactive dashboards
8.3 Custom components
8.3 1 Creating custom widgets
8.3 2 Extending Streamlit with custom components
9 Case Studies
9.1 Building a data exploration app
9.2 Building a machine learning model deployment app
9.3 Building a real-time data visualization app
2.1.1 Displaying Text

Displaying Text

In Streamlit, displaying text is one of the most fundamental tasks. Streamlit provides several methods to display text, each suited for different purposes. Understanding these methods will help you create clear and informative web applications.

Key Concepts

1. st.write()

The st.write() function is a versatile method in Streamlit that can display text, data, and even complex objects like charts and tables. It automatically formats the output based on the input type, making it easy to use for a variety of purposes.

2. st.text()

The st.text() function is used to display raw text without any additional formatting. This is useful when you want to ensure that the text is displayed exactly as it is written, without any interpretation or formatting by Streamlit.

3. st.markdown()

The st.markdown() function allows you to write text using Markdown syntax. Markdown is a lightweight markup language that allows you to format text using simple syntax. This is particularly useful for creating headings, lists, and adding links and images.

4. st.title(), st.header(), and st.subheader()

These functions are used to display text with specific formatting for titles, headers, and subheaders. They are useful for structuring your content and making it easier to read and navigate.

Examples

Example 1: Using st.write()

import streamlit as st

st.write("Hello, Streamlit!")
st.write("This is a simple text display.")
    

Example 2: Using st.text()

import streamlit as st

st.text("This is raw text.")
st.text("No additional formatting will be applied.")
    

Example 3: Using st.markdown()

import streamlit as st

st.markdown("## This is a Markdown heading")
st.markdown("* This is a list item")
st.markdown("[Visit Streamlit](https://streamlit.io)")
    

Example 4: Using st.title(), st.header(), and st.subheader()

import streamlit as st

st.title("Main Title")
st.header("Section Header")
st.subheader("Subsection Header")
    

By mastering these methods, you can effectively display text in your Streamlit applications, making your content clear, structured, and engaging.