本教程将介绍如何使用Streamlit和Matplotlib创建一个用户友好的数据可视化Web应用程序。该应用程序允许上传CSV文件,并为任何选定列生成折线图。
图片
构建Streamlit应用程序
在本文中,我们将指导你完成创建此应用程序的步骤。无论你是专家还是刚刚入门,最终你都能轻松地将Parquet文件转换为可视化结果。所以,跟随本教程开始吧。
import streamlit as st
import pandas as pd
import matplotlib.pyplot as plt
def main():
st.set_page_config(page_title='Line Plotter', page_icnotallow=':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 labels
plt.xticks(rotatinotallow=45)
st.pyplot(fig)
if __name__ == '__main__':
main()
图片
总结
这就是本文简单的教程!使用Streamlit和Matplotlib创建的一个简单的交互式数据可视化Web应用程序。该应用程序是一个很好的工具,可以快速将CSV文件中的不同数据列可视化为折线图。通过提供用户友好的控件,如下拉列表、文本字段和颜色选择器,该应用程序允许用户轻松自定义其数据可视化。
虽然此应用程序相当简单,但它展示了Streamlit和Matplotlib创建交互式、用户友好的数据可视化应用程序的强大功能。用户可以随意扩展。