Dalam dunia sains data yang serba pantas hari ini, menggambarkan data dengan berkesan adalah penting. Sama ada anda seorang penganalisis data yang berpengalaman atau baru memulakan perjalanan anda, menguasai pelbagai teknik visualisasi boleh meningkatkan keupayaan anda untuk menyampaikan cerapan dan mendorong membuat keputusan. Panduan komprehensif ini meneroka Streamlit, perpustakaan Python yang popular untuk mencipta aplikasi web interaktif dan memperkenalkan 12 jenis carta berkuasa yang anda boleh buat dengan mudah untuk menggambarkan data anda. Daripada carta bar ringkas kepada visualisasi geospatial lanjutan, tutorial ini merangkumi semuanya.
Pengenalan kepada Streamlit dan Keupayaan Visualisasinya
Streamlit telah merevolusikan cara saintis data dan pembangun mencipta aplikasi web interaktif untuk visualisasi data. Dengan API intuitif dan integrasi lancar dengan perpustakaan Python yang popular, Streamlit membolehkan anda mengubah skrip data anda menjadi apl web boleh kongsi dalam beberapa minit. Dalam panduan ini, kami akan menumpukan pada kepelbagaian Streamlit dalam mencipta pelbagai jenis carta, setiap satu disesuaikan dengan keperluan visualisasi data yang berbeza.
1. Carta Kawasan
Pengenalan kepada Carta Kawasan
Carta kawasan sangat baik untuk memaparkan jumlah kumulatif dari semasa ke semasa atau merentas kategori. Mereka menekankan magnitud perubahan dan hubungan antara set data yang berbeza, menjadikannya sempurna untuk menjejak arah aliran dan membandingkan berbilang siri data.
Mencipta Carta Kawasan
import numpy as np
import pandas as pd
import streamlit as st
st.write("### 1. Area Chart")
# Generate random data for the area chart
chart_data = pd.DataFrame(
np.random.randn(20, 3),
columns=["col1", "col2", "col3"],
)
# Create an area chart using the random data
st.area_chart(
chart_data,
x="col1",
y=["col2", "col3"],
color=["#FF0000", "#0000FF"],
)
Kes Penggunaan
-
Pertumbuhan Jualan: Bayangkan bagaimana jualan meningkat pada suku yang berbeza.
-
Trafik Laman Web: Jejaki bilangan pelawat dari semasa ke semasa.
-
Metrik Terkumpul: Paparkan metrik terkumpul seperti jumlah hasil atau perbelanjaan.
Petua Penyesuaian
-
Laraskan Warna: Ubah suai parameter warna agar sepadan dengan jenama atau pilihan anda.
-
Tambah Tajuk dan Label: Tingkatkan kejelasan dengan menambahkan tajuk dan label paksi.
-
Ubah suai Paksi: Laraskan skala atau julat paksi untuk perwakilan data yang lebih baik.
2. Carta Bar
Pengenalan kepada Carta Bar
Carta bar ialah cara asas untuk membandingkan kategori atau kumpulan yang berbeza. Ia sangat berkesan dalam memaparkan titik data diskret, menjadikannya mudah untuk membandingkan kuantiti merentas pelbagai kategori.
Mencipta Carta Bar
import numpy as np
import pandas as pd
import streamlit as st
st.write("### 1. Area Chart")
# Generate random data for the area chart
chart_data = pd.DataFrame(
np.random.randn(20, 3),
columns=["col1", "col2", "col3"],
)
# Create an area chart using the random data
st.area_chart(
chart_data,
x="col1",
y=["col2", "col3"],
color=["#FF0000", "#0000FF"],
)
Kes Penggunaan
-
Jualan mengikut Wilayah: Bandingkan angka jualan merentas rantau yang berbeza.
-
Kepopularan Produk: Paparkan populariti pelbagai produk.
-
Hasil Tinjauan: Visualisasikan respons kepada soalan tinjauan.
Pilihan Penyesuaian
-
Warna Bar: Walaupun contoh menggunakan tetapan lalai, anda boleh menyesuaikan warna bar menggunakan parameter tambahan atau dengan pramemproses data.
-
Orientasi: Tukar orientasi bar (mendatar atau menegak) untuk kebolehbacaan yang lebih baik.
-
Label dan Legenda: Tambahkan label dan legenda untuk memberikan lebih banyak konteks kepada data.
3. Carta Garisan
Pengenalan kepada Carta Garis
Carta garisan sangat baik untuk menunjukkan arah aliran berbanding data berterusan, seperti siri masa. Mereka membantu dalam menjejaki perubahan, mengenal pasti corak dan membandingkan berbilang siri data pada selang masa yang sama.
Mencipta Carta Garis
import numpy as np
import pandas as pd
import streamlit as st
st.write("### 2. Bar Chart")
# Generate random data for the bar chart
chart_data = pd.DataFrame(
np.random.randn(20, 3),
columns=["col1", "col2", "col3"],
)
# Display a bar chart using the same data
st.bar_chart(chart_data)
Kes Penggunaan
-
Harga Saham: Jejaki pergerakan harga saham dari semasa ke semasa.
-
Perubahan Suhu: Pantau turun naik suhu merentas hari yang berbeza.
-
Lawatan Tapak Web: Analisis aliran trafik tapak web selama beberapa minggu atau bulan.
Petua Penyesuaian
-
Berbilang Baris: Plot berbilang baris dengan menyatakan lajur tambahan dalam parameter y.
-
Gaya Garisan: Laraskan gaya baris (pepejal, putus-putus) untuk membezakan antara siri data.
-
Interaktiviti: Tingkatkan interaktiviti dengan menambahkan petua alat atau kesan tuding untuk memaparkan nilai yang tepat.
4. Peta
Pengenalan kepada Peta dalam Streamlit
Penggambaran data geografi adalah penting untuk analisis spatial, membolehkan anda menggambarkan titik data pada peta untuk mengenal pasti corak, titik liputan dan pengedaran merentas lokasi yang berbeza.
Mencipta Peta
import numpy as np
import pandas as pd
import streamlit as st
st.write("### 1. Area Chart")
# Generate random data for the area chart
chart_data = pd.DataFrame(
np.random.randn(20, 3),
columns=["col1", "col2", "col3"],
)
# Create an area chart using the random data
st.area_chart(
chart_data,
x="col1",
y=["col2", "col3"],
color=["#FF0000", "#0000FF"],
)
Kes Penggunaan
-
Lokasi Kedai: Paparkan lokasi berbilang kedai atau pejabat.
-
Tempat Panas Acara: Visualisasikan kawasan dengan kepekatan acara atau aktiviti yang tinggi.
-
Taburan Demografi: Tunjukkan taburan kumpulan demografi yang berbeza di seluruh wilayah.
Petua Penyesuaian
-
Pusat dan Zum Peta: Laraskan tahap tengah dan zum peta untuk memfokus pada kawasan tertentu.
-
Estetika Penanda: Sesuaikan bentuk, saiz dan warna penanda untuk mewakili dimensi data yang berbeza.
-
Interaktiviti: Tambahkan petua alat atau tetingkap timbul untuk memberikan lebih banyak maklumat tentang setiap titik data.
5. Carta Taburan
Pengenalan kepada Carta Taburan
Carta taburan ialah alat yang berkuasa untuk mengenal pasti perhubungan atau korelasi antara dua pembolehubah. Ia membantu dalam mendedahkan corak, arah aliran dan kemungkinan penyebab dalam data anda.
Mencipta Carta Taburan
import numpy as np
import pandas as pd
import streamlit as st
st.write("### 2. Bar Chart")
# Generate random data for the bar chart
chart_data = pd.DataFrame(
np.random.randn(20, 3),
columns=["col1", "col2", "col3"],
)
# Display a bar chart using the same data
st.bar_chart(chart_data)
Kes Penggunaan
-
Pengiklanan lwn. Jualan: Terokai hubungan antara perbelanjaan pengiklanan dan angka jualan.
-
Tinggi vs. Berat: Analisis perkaitan antara ketinggian dan berat individu.
-
Metrik Prestasi: Bandingkan metrik prestasi produk atau perkhidmatan yang berbeza.
Petua Penyesuaian
-
Garis Aliran: Tambahkan garis aliran untuk menyerlahkan korelasi atau aliran dalam data.
-
Saiz dan Warna Titik: Bezakan titik data dengan melaraskan saiz dan warnanya berdasarkan pembolehubah tambahan.
-
Interaktiviti: Tingkatkan interaktiviti dengan mendayakan petua alat yang memaparkan maklumat terperinci apabila melayang di atas titik.
6. Carta Altair
Pengenalan kepada Altair
Altair ialah perpustakaan visualisasi statistik deklaratif untuk Python, menawarkan keupayaan carta lanjutan dengan sintaks yang mudah dan intuitif. Ia cemerlang dalam mencipta visualisasi interaktif dan kompleks dengan kod minimum.
Mencipta Carta Altair
import numpy as np
import pandas as pd
import streamlit as st
st.write("### 1. Area Chart")
# Generate random data for the area chart
chart_data = pd.DataFrame(
np.random.randn(20, 3),
columns=["col1", "col2", "col3"],
)
# Create an area chart using the random data
st.area_chart(
chart_data,
x="col1",
y=["col2", "col3"],
color=["#FF0000", "#0000FF"],
)
Kes Penggunaan
-
Analisis Data Penerokaan: Menyiasat hubungan antara berbilang pembolehubah.
-
Papan Pemuka Interaktif: Cipta visualisasi dinamik yang bertindak balas kepada input pengguna.
-
Penggambaran Statistik Terperinci: Persembahkan data kompleks dalam format yang boleh difahami.
Petua Penyesuaian
-
Faceting: Buat gandaan kecil untuk membandingkan subset data yang berbeza.
-
Jenis Tanda: Eksperimen dengan jenis tanda yang berbeza seperti garisan, bar atau kawasan untuk pelbagai kesan visual.
-
Elemen Interaktif: Menggabungkan pilihan, penapis dan zum untuk meningkatkan interaktiviti pengguna.
8. Carta Graphviz
Pengenalan kepada Graphviz
Graphviz ialah alat untuk mencipta graf dan rajah rangkaian, menjadikannya tidak ternilai untuk menggambarkan perhubungan, aliran kerja dan struktur organisasi. Ia membolehkan anda mewakili sambungan yang kompleks dengan cara yang jelas dan teratur.
Mencipta Carta Graphviz
import numpy as np
import pandas as pd
import streamlit as st
st.write("### 2. Bar Chart")
# Generate random data for the bar chart
chart_data = pd.DataFrame(
np.random.randn(20, 3),
columns=["col1", "col2", "col3"],
)
# Display a bar chart using the same data
st.bar_chart(chart_data)
Kes Penggunaan
-
Saluran Paip Pembangunan Perisian: Visualisasikan peringkat pembangunan perisian daripada perancangan hingga penggunaan.
-
Struktur Organisasi: Mewakili hierarki dan perhubungan dalam sesebuah organisasi.
-
Pokok Keputusan: Gambarkan aliran keputusan dan kemungkinan hasil.
Petua Penyesuaian
-
Bentuk dan Warna Nod: Sesuaikan bentuk dan warna nod untuk mewakili jenis entiti atau status yang berbeza.
-
Gaya Tepi: Ubah suai gaya tepi (putus putus, tebal) untuk menunjukkan jenis perhubungan atau kebergantungan yang berbeza.
-
Reka Letak Graf: Terokai reka letak graf yang berbeza (cth., hierarki, bulatan) untuk kejelasan yang lebih baik.
9. Carta Plot
Pengenalan kepada Plotly
Plotly ialah perpustakaan yang berkuasa untuk mencipta graf interaktif dan berkualiti penerbitan. Ia menawarkan pelbagai jenis carta dan pilihan penyesuaian, menjadikannya sesuai untuk visualisasi data yang kompleks dan papan pemuka interaktif.
Mencipta Plot Pengedaran
import numpy as np
import pandas as pd
import streamlit as st
st.write("### 1. Area Chart")
# Generate random data for the area chart
chart_data = pd.DataFrame(
np.random.randn(20, 3),
columns=["col1", "col2", "col3"],
)
# Create an area chart using the random data
st.area_chart(
chart_data,
x="col1",
y=["col2", "col3"],
color=["#FF0000", "#0000FF"],
)
Mencipta Plot Taburan dengan Plotly Express
import numpy as np
import pandas as pd
import streamlit as st
st.write("### 2. Bar Chart")
# Generate random data for the bar chart
chart_data = pd.DataFrame(
np.random.randn(20, 3),
columns=["col1", "col2", "col3"],
)
# Display a bar chart using the same data
st.bar_chart(chart_data)
Kes Penggunaan
-
Analisis Pengedaran: Bandingkan pengedaran set data yang berbeza secara bersebelahan.
-
Papan Pemuka Interaktif: Cipta visualisasi dinamik dan interaktif yang bertindak balas kepada input pengguna.
-
Analisis Perbandingan: Gunakan berbilang tema dan gaya untuk menyerlahkan aspek data yang berbeza.
Petua Penyesuaian
-
Pelarasan Tema: Terokai tema yang berbeza untuk dipadankan dengan reka bentuk aplikasi anda.
-
Konfigurasi Reka Letak: Laraskan tetapan reka letak seperti margin, legenda dan tajuk paksi untuk persembahan yang lebih baik.
-
Jenis Carta Lanjutan: Eksperimen dengan plot 3D, peta haba dan jenis carta lanjutan lain untuk visualisasi yang lebih kompleks.
10. Carta pydeck
Pengenalan kepada pydeck
pydeck ialah antara muka Python untuk deck.gl, mendayakan visualisasi berkuasa WebGL berprestasi tinggi yang maju. Ia amat berguna untuk mencipta visualisasi geospatial yang rumit dan interaktif.
Mencipta Carta pydeck
import numpy as np
import pandas as pd
import streamlit as st
st.write("### 3. Line Chart")
# Generate random data for the line chart
chart_data = pd.DataFrame(
np.random.randn(20, 3),
columns=["col1", "col2", "col3"],
)
# Create a line chart with the random data
st.line_chart(
chart_data,
x="col1",
y="col2",
color="col3",
)
st.write("#### 3.1 Basic Line Chart")
Kes Penggunaan
-
Analisis Geospatial: Visualisasikan set data geospatial yang besar untuk mengenal pasti corak dan titik liputan.
-
Perancangan Bandar: Analisis kepadatan penduduk, aliran trafik atau pengagihan infrastruktur.
-
Kajian Alam Sekitar: Petakan data alam sekitar seperti tahap pencemaran atau penampakan hidupan liar.
Petua Penyesuaian
-
Jenis Lapisan Berbeza: Eksperimen dengan pelbagai jenis lapisan seperti ScatterplotLayer, ArcLayer atau PathLayer untuk kesan visual yang pelbagai.
-
Gaya Peta: Tukar parameter map_style untuk menggunakan tema peta yang berbeza (cth., satelit, mod gelap).
-
Interaktiviti: Tingkatkan interaktiviti dengan mendayakan petua alat, penapis dan kemas kini data dinamik.
11. Carta piplot
Pengenalan kepada pyplot Matplotlib
Matplotlib ialah perpustakaan perancangan asas dalam Python, dan pyplot menyediakan antara muka seperti MATLAB untuk mencipta visualisasi statik, animasi dan interaktif. Ia sangat boleh disesuaikan dan digunakan secara meluas untuk analisis data statistik dan tujuan pendidikan.
Mencipta Histogram
import numpy as np
import pandas as pd
import streamlit as st
st.write("### 1. Area Chart")
# Generate random data for the area chart
chart_data = pd.DataFrame(
np.random.randn(20, 3),
columns=["col1", "col2", "col3"],
)
# Create an area chart using the random data
st.area_chart(
chart_data,
x="col1",
y=["col2", "col3"],
color=["#FF0000", "#0000FF"],
)
Kes Penggunaan
-
Analisis Statistik: Visualisasikan pengedaran set data untuk mengenal pasti corak dan anomali.
-
Tujuan Pendidikan: Ajar konsep seperti taburan kebarangkalian dan penormalan data.
-
Penerokaan Data: Menilai bentuk dan penyebaran data sebelum melakukan analisis selanjutnya.
Pilihan Penyesuaian
-
Tajuk dan Label: Tambahkan tajuk, label paksi dan legenda untuk menyediakan konteks.
-
Warna dan Gaya: Sesuaikan warna bar, gaya tepi dan estetika plot keseluruhan.
-
Berbilang Histogram: Tindih berbilang histogram untuk membandingkan set data atau kumpulan yang berbeza.
-
Ciri Terperinci: Menggabungkan plot ketumpatan, taburan kumulatif atau anotasi untuk mendapatkan cerapan yang lebih mendalam.
12. Carta Vega
Pengenalan kepada Vega-Lite
Vega-Lite ialah tatabahasa peringkat tinggi untuk mencipta visualisasi interaktif, disepadukan ke dalam Streamlit untuk fleksibiliti. Ia membolehkan anda membina carta yang canggih dan responsif dengan spesifikasi yang ringkas, menjadikannya lebih mudah untuk mencipta visualisasi yang kompleks tanpa pengekodan yang meluas.
Mencipta Carta Vega
import numpy as np
import pandas as pd
import streamlit as st
st.write("### 2. Bar Chart")
# Generate random data for the bar chart
chart_data = pd.DataFrame(
np.random.randn(20, 3),
columns=["col1", "col2", "col3"],
)
# Display a bar chart using the same data
st.bar_chart(chart_data)
Kes Penggunaan
-
Penggambaran Interaktif Canggih: Cipta carta kompleks yang bertindak balas kepada interaksi pengguna seperti melayang, mengklik atau memilih.
-
Penerokaan Data: Membolehkan pengguna meneroka set data secara dinamik, mendedahkan cerapan melalui elemen interaktif.
-
Membenamkan Carta Kompleks: Sepadukan carta terperinci dan interaktif dalam apl Streamlit untuk pembentangan data yang komprehensif.
Petua Penyesuaian
-
Menambah Lapisan: Menggabungkan lapisan tambahan seperti garisan, bar atau kawasan untuk memperkayakan visualisasi.
-
Skala dan Kapak Tersuai: Laraskan skala, tajuk paksi dan label untuk meningkatkan kebolehbacaan dan persembahan.
-
Pilihan Interaktif: Laksanakan pilihan dan penapis interaktif untuk membolehkan pengguna menumpukan pada subset data tertentu.
-
Penggayaan dan Tema: Tingkatkan estetika dengan menyesuaikan warna, fon dan tetapan tema keseluruhan.
Rekap Jenis Carta
Dalam tutorial ini, kami telah merangkumi pelbagai jenis carta yang tersedia dalam Streamlit, setiap satu sesuai untuk keperluan visualisasi data yang berbeza:
-
Carta Kawasan: Sesuai untuk menunjukkan jumlah kumulatif dan arah aliran.
-
Carta Bar: Sesuai untuk membandingkan kategori atau kumpulan diskret.
-
Carta Baris: Cemerlang untuk menjejaki perubahan ke atas data berterusan seperti siri masa.
-
Peta: Penting untuk visualisasi data geografi dan analisis spatial.
-
Carta Taburan: Berguna untuk mengenal pasti hubungan dan korelasi antara pembolehubah.
-
Carta Altair: Visualisasi interaktif lanjutan dengan sintaks deklaratif.
-
Carta Graphviz: Memvisualisasikan perhubungan dan aliran kerja melalui gambar rajah graf.
-
Carta Plot: Graf interaktif dan berkualiti penerbitan dengan penyesuaian yang meluas.
-
Carta pydeck: Visualisasi geospatial berprestasi tinggi menggunakan WebGL.
-
Carta pyplot: Plot asas dengan keupayaan serba boleh Matplotlib.
-
Carta Vega: Visualisasi interaktif yang canggih dengan tatabahasa Vega-Lite.
? Dapatkan Kod: GitHub - jamesbmour/blog_tutorials
? Tutorial Streamlit Berkaitan:JustCodeIt
? Sokong kerja saya: Beli Saya Kopi
Atas ialah kandungan terperinci Bahagian Perkemas Menguasai Visualisasi Data dan Jenis Carta. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!