大家好,本文将介绍使用Streamlit和Matplotlib创建一个用户友好的数据可视化Web应用程序。该应用程序允许上传CSV文件,并为任何选定列生成折线图。
构建Streamlit应用程序
在本文中,我们将指导完成创建此应用程序的步骤。无论你是专家还是刚刚入门,最终都能轻松地将Parquet文件转换为可视化结果。
import streamlit as st
import pandas as pd
import matplotlib.pyplot as pltdef main():st.set_page_config(page_title='Line Plotter', page_icon=':chart_with_upwards_trend:')st.title('Line Plotter')uploaded_file = st.file_uploader("Choose a CSV file", type="csv")
然后,用户从下拉列表中选择要在折线图中可视化的列。该应用程序还提供了文本输入字段,用于输入绘图的标题以及X轴和Y轴的标签,颜色选择器让用户选择折线图的颜色。
column = st.selectbox('Select a column', df.columns)title = st.text_input('Title', 'Line Plot')x_label = st.text_input('X-axis Label', 'X-axis')y_label = st.text_input('Y-axis Label', 'Y-axis')color = st.color_picker('Line Color', '#1f77b4')
使用Matplotlib创建折线图
根据用户的输入,该应用程序使用Matplotlib生成一条线图,将选择的列绘制在DataFrame的索引上。
X轴标签旋转45度,以确保它们易于阅读且不会重叠。
fig, ax = plt.subplots()ax.plot(df.index, df[column], color=color)ax.set_title(title)ax.set_xlabel(x_label)ax.set_ylabel(y_label)# Rotate X-axis labelsplt.xticks(rotation=45)st.pyplot(fig)if __name__ == '__main__':main()
使用Streamlit和Matplotlib创建的一个简单的交互式数据可视化Web应用程序。该应用程序是一个很好的工具,可以快速将CSV文件中的不同数据列可视化为折线图。通过提供用户友好的控件,如下拉列表、文本字段和颜色选择器,该应用程序允许用户轻松自定义其数据可视化。
虽然此应用程序相当简单,但它展示了Streamlit和Matplotlib创建交互式、用户友好的数据可视化应用程序的强大功能。用户可以随意扩展。