معرفی فریم‌ورک Streamlit [بخش‌دوم]

معرفی فریم‌ورک Streamlit [بخش‌دوم]

نوشته شده توسط: تیم فنی نیک آموز
۱۲ اردیبهشت ۱۴۰۰
زمان مطالعه: 12 دقیقه
۰
(۰)

مقدمه

در یک مجموعه مقاله قصد داریم در مورد فریم‌ورک Streamlit صحبت کرده و با قابلیت‌های مختلف آن آشنا شویم. نشان دهیم که چطور با کمترین زحمت بهترین داشبوردها را طراحی کنیم. داشبوردهایی که به شدت تعاملی بوده و کاربر از کار با آن لذت می‌برد. البته برای ایجاد چنین داشبوردهایی نیازی به دانش فنی بالا نیست، آسان و سریع، تنها با چند خط کد وب اپلیکیشن‌های فوق‌العاده تولید خواهیم کرد.
در قسمت اول به معرفی Streamlit پرداخته و از قابلیت‌های آن گفتیم. سپس ابزارک‌های مختلف آن را معرفی کرده و نحوه نصب و راه‌اندازی Streamlit را آموزش دادیم. در مقاله دوم قصد داریم نخست نحوه نمایش نقشه به کمک آن را آموزش داده و سپس به سراغ معرفی ابزارک‌های دیگر مثل اسلایدر، Checkbox و Selectbox خواهیم پرداخت.

ترسیم نقشه

یکی از کارهایی که با استفاده از Streamlit به‌سادگی انجام‌ پذیر است، ایجاد یک نقشه با تعدادی نقاط داده بر روی آن است. این کار با استفاده از ()st.map قابل انجام است.

map_data = pd.DataFrame(
    np.random.randn(1000, 2) / [50, 50] + [37.76, -122.4],
    columns=['lat', 'lon'])
st.map(map_data)

استفاده از ابزارک‌ها

با استفاده از ابزارک‌ها، Streamlit این امکان را به شما می‌دهد تا داشبوردهای تعاملی زیبا بسازید. Streamlit دکمه‌ها، چک باکس (Checkbox)، نوار لغزنده (Slider)، ورودی متنی (Text Input) و بسیاری امکان دیگر را مهیا کرده است. برای کسب اطلاعات بیشتر درباره تمام ابزارک‌های موجود، به API سر بزنید.

استفاده از checkbox برای نمایش/عدم نمایش داده

یکی از ابزارک‌های پشتیبانی شده توسط Streamlit، چک باکس است که برای نمایش یا عدم نمایش داده استفاده می‌شود.

if st.checkbox('Show dataframe'):
    st.dataframe(pd.DataFrame({
        'first column': [1, 2, 3, 4],
        'second column': [10, 20, 30, 40]
    }))
    chart_data = pd.DataFrame(
        np.random.randn(20, 3),
        columns=['a', 'b', 'c'])
    st.line_chart(chart_data)
    map_data = pd.DataFrame(
        np.random.randn(1000, 2) / [50, 50] + [37.76, -122.4],
        columns=['lat', 'lon'])
    st.map(map_data)

فیلترکردن داده در یک Data-Frame با استفاده از Selectbox

از Selectbox برای انتخاب یک گزینه از چند گزینه از یک لیست می‌توان استفاده کرد. این کار برای فیلتر داده بسیار مفید است. با استفاده از آن می‌توانیم روی ستون‌های Data-Frame ، فیلتر اعمال کنیم.

df = pd.DataFrame(
    np.random.randn(20, 3),
    columns=['a', 'b', 'c'])
column = st.selectbox(
    'What column to you want to display',
     df.columns)
st.line_chart(df[column])

همچنین می‌توانید با استفاده از st.multiselect به‌جای st.selectbox، چندین مورد را هم‌زمان انتخاب کنید.

df = pd.DataFrame(
    np.random.randn(20, 3)
    columns=['a', 'b', 'c'])
columns = st.multiselect(
    label='What column to you want to display', options=df.columns)
st.line_chart(df[columns])

نوار لغزنده (اسلایدر)

یکی دیگر از ابزارک‌های عالی، نوار لغزنده است. از نوار لغزنده می‌توان برای انتخاب یک یا چند مقدار خاص استفاده کرد. برای ساختن یک نوار لغزنده ساده، برای انتخاب بین ۰-۱۰۰، کد زیر را می‌توان استفاده کرد.

x = st.slider('Select a value')
st.write(x, 'squared is', x * x)

اگر بخواهید چند مقدار را انتخاب کنید، باید چندین مقدار پیش‌فرض، به ورودی مقادیر بدهید.

[gap height="20"]x = st.slider(
    'Select a range of values',
    ۰.۰, ۱۰۰.۰, (۲۵.۰, ۷۵.۰))
st.write('Range values:', x)

در شکل زیر نوار لغزنده چند مقداری (Multivalue) نمایش داده شده است.

نتیجه‌گیری

در این مقاله، در مورد Streamlit و اینکه چگونه از آن برای تبدیل پروژه‌های علم داده‌تان به وبسایت‌های زیبا استفاده کنید، توضیحاتی دادم. فکر می‌کنم که Streamlit بسیار جالب است چراکه استفاده از آن بسیار آسان است و برای ایجاد یک وبسایت، هیچ نیازی به داشتن تجربه توسعه وبسایت ندارید.
اگر علاقه‌مند بودید، همچنین یک داشبورد Stock Price (قیمت سهام) با استفاده از Streamlit ساخته‌ام که در این آدرس Github قابل مشاهده است.
در این مقاله به سراغ موارد بعدی مثل ترسیم نقشه و سایر ابزارک‌های Streamlit رفتیم. نشان دادیم چطور با کمترین زحمت و تلاش می‌توان یک نقشه منحصر فرد طراحی کرد. چطور با کمک ابزارک‌هایی مثل اسلایدر خروجی کارمان را به بهترین حالت ممکن تعاملی کنیم به صورتی که کاربر از کار با داشبورد لذت ببرد.

چه رتبه ای می‌دهید؟

میانگین ۰ / ۵. از مجموع ۰

اولین نفر باش

title sign
دانلود مقاله
معرفی فریم‌ورک Streamlit [بخش‌دوم]
فرمت PDF
6 صفحه
حجم 1 مگابایت
دانلود مقاله
title sign
معرفی نویسنده
تیم فنی نیک آموز
مقالات
248 مقاله توسط این نویسنده
محصولات
0 دوره توسط این نویسنده
تیم فنی نیک آموز
پروفایل نویسنده
title sign
معرفی محصول
امیر باقری

دوره یادگیری علم داده

1.780.000 تومان 1.068.000 تومان
title sign
دیدگاه کاربران

جشنواره عیدآموز نیک آموز، سال جدید رو با قدرت شروع کن
مشاهده تخفیف ها
close-image