உங்கள் சொந்த வானிலை டேஷ்போர்டை நிமிடங்களில் உருவாக்குங்கள் (API Keys இல்லை, செலவு இல்லை)

உங்கள் சொந்த வானிலை டேஷ்போர்டை நிமிடங்களில் உருவாக்குங்கள் (API Keys இல்லை, செலவு இல்லை)

Streamlit, Plotly மற்றும் இலவச தரவைப் பயன்படுத்தி இன்டராக்டிவ் வானிலை காட்சிப்படுத்தல்களை உருவாக்குவதற்கான தொடக்கநிலை வழிகாட்டி

Hook

ஒரு பைசாவும் செலவழிக்காமல் அல்லது API keys-ஐத் தேடாமல், பைத்தானில் ஒரு நேரடி வானிலை டேஷ்போர்டை நீங்கள் உருவாக்கலாம். அழகான இன்டராக்டிவ் சார்ட்களுடன் உண்மையான நேர வானிலை தரவைக் காட்டும் ஒன்றை, ஆன்லைனில் இயங்கும் வகையில் எப்படி உருவாக்குவது என்பது இங்கே.

2026-ல் இது ஏன் முக்கியமானது

இன்று (ஜூன் 30, 2026), டேட்டா விசுவலைசேஷன் கருவிகள் மிகவும் எளிதாகக் கிடைக்கின்றன, அடிப்படை பைத்தான் தெரிந்த எவரும் தொழில்முறை தோற்றமுடைய டேஷ்போர்டுகளை உருவாக்க முடியும். Streamlit போன்ற கருவிகள் வெப் டெவலப்மெண்ட் கற்றுக்கொள்வதில் உள்ள தடையை நீக்கியுள்ளன—உங்களுக்கு HTML, CSS அல்லது JavaScript தெரிய வேண்டியதில்லை. ஒரு விரைவான யோசனையை உடனடியாக உண்மையானதாக மாற்ற விரும்புவோருக்கு இது மிகப் பெரிய விஷயம். Open-Meteo API-யும் இலவச வானிலை தரவுக்கான சிறந்த ஆதாரமாக மாறியுள்ளது, இதற்குப் பதிவு தேவையில்லை, இதனால் இதுபோன்ற ப்ராஜெக்ட்களை மிகவும் எளிதாகச் செய்யலாம்.

நீங்கள் என்ன உருவாக்குகிறீர்கள்

இதைச் செய்யும் வானிலை டேஷ்போர்டு:

  • எந்தவொரு இடத்திற்கான தற்போதைய நிலைகளைக் காட்டுகிறது (வெப்பநிலை, ஈரப்பதம், காற்றின் வேகம்)
  • அடுத்த சில நாட்களுக்கு வெப்பநிலை மாறுபாடுகளின் அழகான சார்ட்களைக் காட்டுகிறது
  • பூமியில் உள்ள எந்தவொரு நகரத்தையும் தேர்ந்தெடுத்து நேரடி தரவை உடனடியாகப் பார்க்க உங்களை அனுமதிக்கிறது
  • Streamlit Cloud-ல் இலவசமாக இயங்குகிறது (Streamlit-ன் ஹோஸ்டிங் சேவை)

முழு விஷயமும் ஒரு வெப் ஆப்பாக இயங்குகிறது—ஒரு URL-ஐப் பார்வையிட்டு உங்கள் பிரவுசரில் அதனுடன் இன்டராக்ட் செய்யுங்கள். நிர்வகிக்க பேக்கெண்ட் இல்லை, கவலைப்பட சர்வர்கள் இல்லை.

உங்களுக்கு என்ன தேவை

  • உங்கள் கணினியில் Python 3.7 அல்லது புதிய பதிப்பு நிறுவப்பட்டிருக்க வேண்டும்
  • ஒரு டெக்ஸ்ட் எடிட்டர் (VS Code, Sublime, அல்லது உங்களுக்குப் பிடித்தது)
  • ஒரு இலவச GitHub கணக்கு
  • ஒரு இலவச Streamlit Cloud கணக்கு (அதே GitHub லாகின்-ஐப் பயன்படுத்துகிறது)
  • அவ்வளவுதான். API keys இல்லை, கிரெடிட் கார்டுகள் இல்லை, சந்தாக்கள் இல்லை.

இது எப்படி வேலை செய்கிறது (ஐடியா)

Streamlit தானாகவே பைத்தான் ஸ்கிரிப்ட்களை வெப் ஆப்ஸ்களாக மாற்றுகிறது. நீங்கள் பைத்தான் எழுதுகிறீர்கள், விஷயங்களை இன்டராக்டிவ் ஆக்கச் சில சிறப்பு கமாண்ட்களைச் சேர்க்கிறீர்கள், மற்றும் Streamlit அதை ஒரு வெப்சைட்டாக மாற்றும் வேலையைக் கையாளுகிறது. Plotly சார்ட்களை உருவாக்குகிறது—அவை இன்டராக்டிவ் ஆனவை, எனவே மக்கள் டேட்டா பாயிண்ட்கள் மீது கர்சரை வைத்துப் பார்க்கலாம் மற்றும் ஜூம் செய்யலாம். Open-Meteo என்பது தன்னார்வலர்களால் நடத்தப்படும் ஒரு இலவச வானிலை API ஆகும், இதற்கு அங்கீகாரம் அல்லது ரேட் லிமிட்டிங் தேவையில்லை (நியாயமான அளவில்).

இந்த மூன்று விஷயங்களும் ஒன்றாகச் சேர்கின்றன: நீங்கள் Open-Meteo-விலிருந்து தரவைப் பெறுகிறீர்கள், பைத்தானைக் கொண்டு அதை ப்ராசஸ் செய்கிறீர்கள், Streamlit-ஐக் கொண்டு அதைக் காட்டுகிறீர்கள், மற்றும் Plotly-ஐக் கொண்டு அதை விசுவலைஸ் செய்கிறீர்கள்.

படி 1: டூல்ஸ்களை இன்ஸ்டால் செய்யுங்கள்

ஒரு டெர்மினலைத் திறந்து இதை ரன் செய்யுங்கள்:

pip install streamlit plotly requests pandas

இது உங்களுக்குத் தேவையான லைப்ரரிகளை இன்ஸ்டால் செய்கிறது. requests இணையத்திலிருந்து தரவைப் பெறுகிறது, pandas அதை ஒழுங்கமைக்க உதவுகிறது, மற்றும் streamlit மற்றும் plotly மீதமுள்ளவற்றைக் கையாளுகின்றன.

படி 2: உங்கள் பைத்தான் ஸ்கிரிப்டை உருவாக்குங்கள்

என்ற பெயரில் ஒரு புதிய ஃபைலை உருவாக்கி app.py இதைப் பேஸ்ட் செய்யுங்கள்:

import streamlit as st
import plotly.graph_objects as go
import requests
import pandas as pd
from datetime import datetime

st.set_page_config(page_title="Weather Dashboard", layout="wide")

st.title("Live Weather Dashboard")

city = st.text_input("Enter a city name:", "London")

if city:
    try:
        geo_url = f"https://geocoding-api.open-meteo.com/v1/search?name={city}&count=1"
        geo_response = requests.get(geo_url).json()
        
        if geo_response["results"]:
            location = geo_response["results"][0]
            lat, lon = location["latitude"], location["longitude"]
            name = location["name"]
            
            weather_url = f"https://api.open-meteo.com/v1/forecast?latitude={lat}&longitude={lon}&current=temperature_2m,humidity,weather_code,wind_speed_10m&hourly=temperature_2m&daily=temperature_2m_max,temperature_2m_min&timezone=auto"
            weather_response = requests.get(weather_url).json()
            
            current = weather_response["current"]
            daily = weather_response["daily"]
            
            col1, col2, col3, col4 = st.columns(4)
            col1.metric("Temperature", f"{current['temperature_2m']}°C")
            col2.metric("Humidity", f"{current['humidity']}%")
            col3.metric("Wind Speed", f"{current['wind_speed_10m']} km/h")
            col4.metric("Location", name)
            
            df = pd.DataFrame({
                "Date": pd.to_datetime(daily["time"]),
                "Max": daily["temperature_2m_max"],
                "Min": daily["temperature_2m_min"]
            })
            
            fig = go.Figure()
            fig.add_trace(go.Scatter(x=df["Date"], y=df["Max"], name="High", mode="lines+markers"))
            fig.add_trace(go.Scatter(x=df["Date"], y=df["Min"], name="Low", mode="lines+markers"))
            fig.update_layout(title="Temperature Forecast", xaxis_title="Date", yaxis_title="Temperature (°C)")
            
            st.plotly_chart(fig, use_container_width=True)
    
    except Exception as e:
        st.error(f"Could not fetch data: {e}")

இந்த ஸ்கிரிப்ட்:

  • பயனர்களை ஒரு நகரத்தின் பெயரை டைப் செய்ய அனுமதிக்கிறது
  • நகரத்தின் அட்சரேகை மற்றும் தீர்க்கரேகையைத் தேடுகிறது
  • Open-Meteo-விலிருந்து தற்போதைய வானிலை மற்றும் முன்னறிவிப்பைப் பெறுகிறது
  • முக்கிய அளவீடுகளைக் (வெப்பநிலை, ஈரப்பதம், காற்று) பெரிய பெட்டிகளில் காட்டுகிறது
  • அடுத்த வாரத்திற்கான அதிக மற்றும் குறைந்த வெப்பநிலைகளைக் காட்டும் ஒரு சார்ட்டை வரைகிறது

படி 3: இதை லோக்கலாக டெஸ்ட் செய்யுங்கள்

உங்கள் டெர்மினலில், உள்ள ஃபோல்டருக்குச் சென்று app.py இதை ரன் செய்யுங்கள்:

streamlit run app.py

Streamlit ஒரு பிரவுசர் விண்டோவைத் திறக்கும். ஒரு நகரத்தின் பெயரை டைப் செய்து அது வேலை செய்வதைப் பாருங்கள். நேரடி தரவு உடனடியாகத் தோன்றுவதை நீங்கள் காண்பீர்கள். "Tokyo," "New York," அல்லது பூமியில் உள்ள எந்தவொரு நகரத்தையும் டைப் செய்து பாருங்கள்—Open-Meteo எல்லாவற்றையும் கொண்டுள்ளது.

படி 4: GitHub-க்கு Push செய்யுங்கள்

ஒரு புதிய GitHub ரெப்பாசிட்டரியை உருவாக்குங்கள் (public, README தேவையில்லை). பின்னர்:

git init
git add app.py
git commit -m "Initial weather dashboard"
git branch -M main
git remote add origin https://github.com/YOUR_USERNAME/REPO_NAME.git
git push -u origin main

என்பதை மாற்றுங்கள் YOUR_USERNAME மற்றும் REPO_NAME உங்கள் உண்மையான GitHub யூசர்நேம் மற்றும் ரெப்பாசிட்டரி பெயருடன்.

படி 5: Streamlit Cloud-ல் Deploy செய்யுங்கள்

செல்லவும் Streamlit Cloud (இது இலவசம் மற்றும் உங்கள் GitHub லாகின்-ஐப் பயன்படுத்துகிறது). "New app" என்பதைக் கிளிக் செய்து உங்கள் ரெப்பாசிட்டரியை கனெக்ட் செய்யுங்கள். Streamlit உங்கள் ஃபைலைத் app.py தானாகவே கண்டுபிடித்து அதை டிப்ளாய் செய்கிறது. ஒரு நிமிடத்திற்குள், நீங்கள் யாருடனும் பகிரக்கூடிய நேரடி URL-ஐப் பெறுவீர்கள்.

GitHub-ல் உள்ள கோடை நீங்கள் அப்டேட் செய்தால், Streamlit தானாகவே மீண்டும் டிப்ளாய் செய்கிறது. நீங்கள் ஒருபோதும் ஒரு சர்வரைத் தொட வேண்டியதில்லை.

படி 6: கஸ்டமைஸ் செய்யுங்கள் (விருப்பப்படி)

நீங்கள் எளிதாக மேலும் அம்சங்களைச் சேர்க்கலாம்:

  • ஒரே நேரத்தில் அதிக நகரங்களைக் காட்டுங்கள்
  • மேலும் சார்ட் வகைகளைச் சேர்க்கவும் (காலப்போக்கில் ஈரப்பதம், காற்றின் முறைகள்)
  • தீவிர வானிலைக்கான எச்சரிக்கைகளைக் காட்டுங்கள்
  • பிடித்த நகரங்களைச் சேமிக்கவும்

Streamlit-ன் டாக்குமெண்டேஷன் சிறந்தது மற்றும் ஆரம்பநிலை பயனர்களுக்கானது. முக்கிய நுண்ணறிவு: உங்களால் பைத்தான் எழுத முடியும் என்றால், வெப் டெவலப்மெண்ட் கற்காமலேயே வெப் ஆப்பை உருவாக்க Streamlit உங்களை அனுமதிக்கிறது.

முடிவுரை

வானிலை டேஷ்போர்டை உருவாக்குவது என்பது இனி சர்வர்கள், டேட்டாபேஸ்கள் அல்லது API அங்கீகாரத்துடன் போராடுவதைக் குறிக்காது. Streamlit சலிப்பான பகுதிகளைக் கையாளுகிறது, Plotly சார்ட்களை அழகாக்குகிறது, மற்றும் Open-Meteo தரவை இலவசமாக வழங்குகிறது. நீங்கள் ஒரு யோசனையிலிருந்து டிப்ளாய் செய்யப்பட்ட ஆப்பிற்கு ஒரு மணி நேரத்திற்குள் செல்லலாம். தரவு காட்சிப்படுத்தல் எவ்வளவு அணுகக்கூடியதாக மாறியுள்ளது என்பதில் இது ஒரு உண்மையான மாற்றமாகும்.

நன்மைகள்

  • முற்றிலும் இலவசம்—செலவுகள் இல்லை, API keys இல்லை, மறைமுகக் கட்டணங்கள் இல்லை
  • உருவாக்க விரைவானது—முழு விஷயமும் சுமார் ஒரு மணி நேரம் எடுக்கும்
  • இயல்பாகவே அழகானது—Plotly சார்ட்கள் மாற்றங்கள் இல்லாமலேயே தொழில்முறையாகத் தோன்றும்
  • இன்டராக்டிவ்—உங்களிடமிருந்து எந்தவொரு கூடுதல் வேலையும் இல்லாமல் பயனர்கள் கிளிக் செய்யலாம், கர்சரை வைக்கலாம் மற்றும் ஜூம் செய்யலாம்
  • தானாகவே டிப்ளாய் செய்யப்படுகிறது—GitHub-க்கு கோடை push செய்யுங்கள், Streamlit உடனடியாக மீண்டும் டிப்ளாய் செய்கிறது
  • உண்மையான ப்ராஜெக்ட்களுக்கு ஸ்கேலபிள்—ஆயிரக்கணக்கான டேட்டா பாயிண்ட்களைக் கொண்ட டேஷ்போர்டுகளுக்கும் இதே அணுகுமுறை செயல்படுகிறது
  • வெப் டெவலப்மெண்ட் திறன்கள் தேவையில்லை—தூய பைத்தான்

குறைபாடுகள்

  • Streamlit Cloud-ல் ரேட் லிமிட்கள் மற்றும் ரிசோர்ஸ் கேப்கள் உள்ளன (இலவச அடுக்கு மிதமானது)
  • Open-Meteo-வின் இலவச அடுக்குக்கு உத்தரவாதமான அப்ப்டைம் இல்லை (தோல்வியடைய வாய்ப்பில்லை, ஆனால் SLA-ஆதரவு இல்லை)
  • ஒரு பயனர் ஒவ்வொரு முறை அதனுடன் இன்டராக்ட் செய்யும் போதும் Streamlit முழு ஸ்கிரிப்டையும் மீண்டும் இயக்குகிறது (கனமான கணக்கீடுகளுக்கு மெதுவாக இருக்கலாம்)
  • UI வடிவமைப்பின் வரையறுக்கப்பட்ட கஸ்டமைசேஷன் (உங்களுக்கு Streamlit-ன் தோற்றம் கிடைக்கும், முழுமையான பிராண்டட் அனுபவம் அல்ல)
  • இயல்பாக பேக்கெண்ட் டேட்டாபேஸ் இல்லை (நீங்கள் அதைத் தனியாக உருவாக்கினால் ஒழிய தரவு நிலைத்திருக்காது)
  • நீங்கள் பெரிய வரலாற்றுத் தரவுத்தொகுப்புகளைப் பெற முயன்றால் செயல்திறன் குறையும்

எச்சரிக்கை

மேலே உள்ள கோட் உதாரணம் பிளேஸ்ஹோல்டர்கள் மற்றும் உதாரண API எண்ட்பாயிண்ட்களைப் பயன்படுத்துகிறது. டிப்ளாய் செய்வதற்கு முன், அதை லோக்கலாக டெஸ்ட் செய்து உண்மையான தரவுடன் வேலை செய்வதை உறுதிப்படுத்திக் கொள்ளுங்கள். Open-Meteo இலவசமானது மற்றும் நம்பகமானது ஆனால் ரேட் லிமிட்களைக் கொண்டுள்ளது—ஒரு வினாடிக்கு ஆயிரக்கணக்கான முறை அதை அழைக்க வேண்டாம். பயனர் தரவைச் சேமிக்க வேண்டிய அம்சங்களை நீங்கள் சேர்த்தால், சரியான பேக்கெண்ட் டேட்டாபேஸை அமைக்க நினைவில் கொள்ளுங்கள் (Streamlit Cloud, PostgreSQL அல்லது பிற சேவைகளுடன் இணைய முடியும், ஆனால் அது இங்குள்ள நோக்கத்திற்கு அப்பாற்பட்டது). உங்கள் சொந்த ஆபத்தில் தொடரவும் மற்றும் லிங்கை பொதுவில் பகிர்வதற்கு முன் முழுமையாக டெஸ்ட் செய்யவும்.

அடிக்கடி கேட்கப்படும் கேள்விகள்

  • Open-Meteo செயலிழந்தால் என்ன நடக்கும்?
  • நான் பயனர் கணக்குகளைச் சேர்த்து பிடித்த நகரங்களைச் சேமிக்க முடியுமா?
  • ஒரே நேரத்தில் எத்தனை பேர் டேஷ்போர்டைப் பயன்படுத்தலாம்?
  • ஒப்பிட்டுப் பார்க்க நான் மேலும் நகரங்களைச் சேர்க்க முடியுமா?
  • தரவு நிகழ்நேரமா அல்லது கேச் செய்யப்பட்டதா?
  • மேலும் சார்ட்கள் மற்றும் காட்சிப்படுத்தல்களை நான் எப்படிச் சேர்ப்பது?
  • நான் வண்ணங்கள் மற்றும் ஃபான்ட்களைக் கஸ்டமைஸ் செய்ய முடியுமா?
  • எனது பயன்பாட்டுக்கு Streamlit Cloud மிகவும் மெதுவாக இருந்தால் என்ன செய்வது?

Tags

#streamlit #datavisualization #python #plotly #weather #webapps #datascience #opendata

Free field guide

Docker Security Checklist

Lock down your containers from build to runtime — 29 practical controls covering images, runtime flags, secrets, and the daemon. Enter your email — you'll get the PDF instantly, plus new posts on Docker, Linux & security.