3 puan yazan GN⁺ 2024-09-21 | 1 yorum | WhatsApp'ta paylaş
  • Hava durumunu manzara olarak görselleştirmek

  • Geleneksel meteoroloji istasyonları sensör verilerini sayılarla gösterir

  • Bu tür panoları incelemek, belirli parametreleri etkili biçimde bulmak, yorumlamak ve görselleştirmek için ciddi çaba gerektirir

  • Manzara görsellerine bakmak doğaldır, stresi azaltır ve çok az çabayla rahat bir görsel deneyim sunar

  • Aşağıdaki yöntem, sayısal verilere dayanmadan hava durumu bilgisinin bir manzara görseline nasıl kodlanacağını açıklar

  • Kodlama ilkeleri

  • Manzara, ormandaki küçük bir evi tasvir eder

  • Görselin yatay ekseni, şu andan başlayıp ertesi günün koşullarına uzanan 24 saatlik bir zaman çizelgesini temsil eder

  • Dikey eksen boyunca dağıtılan çeşitli manzara öğeleri, hava olaylarını ve koşullarını simgeler

  • Şu andan daha uzakta olan olaylar, görselde daha sağda konumlanır

  • Aşağıdaki bilgiler manzara görseline kodlanabilir:

    • Zaman çizelgesinde gezinmeyi basitleştiren zaman işaretleri:
      • gün doğumu ve gün batımı saatleri
      • öğle ve gece yarısı
    • Hava durumu tahmini bilgileri:
      • rüzgar yönü ve şiddeti
      • sıcaklık değişimi
      • en yüksek ve en düşük sıcaklık değerleri
      • bulut örtüsü
      • yağış miktarı
    • Mevcut hava durumu koşulları:
      • sıcaklık
      • hava basıncı
    • Hava dışı olaylar:
      • doğum günleri
      • resmî tatiller
  • Uygulama

  • Görsel üretim kodu Python'un Pillow kütüphanesi kullanılarak yazılmıştır ve OpenWeather verilerine dayanır

  • Görseller, 296x128 E-Ink ekranlarda kullanılmak üzere tasarlanmıştır

  • Kod, Python 3.9 üzerinde test edilmiştir

  • Olay görseli | Açıklama

    • | gün doğumu
    • | gün batımı
    • | bulut örtüsü
    • | mevcut zaman konumu
    • | gece yarısı
    • | öğle
    • | güney rüzgarı
    • | doğu rüzgarı
    • | batı rüzgarı
    • | kuzey rüzgarı
    • | yağmur
  • Örnekler

  • Manzara görseli | Açıklama

    • | Saat yaklaşık öğle vakti ve açık gökyüzüyle birlikte biraz bulut bekleniyor. Gece boyunca kuzey rüzgarı esmesi bekleniyor. Sıcaklık şu anda yükseliyor, gün batımından sonra düşecek ve gün doğumundan önce en düşük seviyeye ulaşacak. Bu süre içinde rüzgar kuzeydoğuya dönecek
    • | Güneş doğuyor ve sıcak, açık bir hava ile hafif güneydoğu rüzgarı bekleniyor. Gün batımından sonra da sıcaklık yüksek kalacak; rüzgar doğuya dönecek ve akşam boyunca güçlenecek
    • | Gün boyunca soğuk yağmur bekleniyor. Güney rüzgarı gece boyunca kuzeydoğuya dönecek
  • Kodu çalıştırma

  • Ortam hazırlığı

    • Linux
      • ./makevenv.sh
      • source .venv/bin/activate
    • Windows
      • makevenv.bat
      • .venv/Scripts/Activate
  • Görsel üretimini test etme

    • weather_landscape.py dosyasındaki OWM_KEY değişkenini OpenWeather API anahtarınızla güncelleyin
    • python run_test.py
  • Sunucuyu çalıştırma

    • python run_server.py
  • Donanım

  • Donanım kurulumu, bir ESP32 geliştirme kartı ile 2.9 inç E-Ink ekran modülünü içerir

  • Mevcut kurulum, kaynağı internetten alır ve görseli her 15 dakikada bir günceller

  • Görsel üretim kodunun ESP32 üzerinde MicroPython ile kullanılıp kullanılamayacağı belirsizdir

  • GN⁺ Özeti

  • Bu yazı, hava durumu bilgisini görsel olarak daha kolay anlaşılır hale getirmek için bunun manzara görsellerine nasıl kodlanacağını açıklar

  • Manzara görselleriyle hava durumu bilgisini aktarmak, kullanıcıların daha az stresle ve daha sezgisel biçimde bilgiyi anlamasını sağlar

  • Görseller Python ve Pillow kütüphanesiyle üretilir; veriler OpenWeather API üzerinden alınır

  • ESP32 geliştirme kartı ve E-Ink ekran kullanılarak donanımda uygulanma olasılığı da incelenir

  • Benzer işlevlere sahip projeler arasında WeatherFlow ve Netatmo Weather Station bulunur

1 yorum

 
GN⁺ 2024-09-21
Hacker News yorumları
  • Küçük ayarlamalarla bu proje gerçekten kullanılabilir gibi görünüyor

    • Rüzgar yönünü ağaçların eğimiyle göstermek
    • Gün doğumu ve gün batımını ufkun üzerindeki güneşle göstermek
    • Gece göğü ve gündüz göğünü farklı şekilde gölgelendirmek
    • Şu anki zamana göre başlamak yerine sabit bir zamandan başlamak
  • Birkaç yıl önce hava durumuna göre sanat eseri seçen bir proje denemiştim

    • Etiketlenmiş görselleri manuel filtreyle kontrol edebiliyorsunuz
    • Bunu doğru hava durumu raporundan çok, atmosfer için masaüstü arka planı olarak kullanmak istemiştim
    • Görsel etiketleri çoğunlukla elle yapılmıştı
  • Bu proje çok eğlenceli

    • Evin yakınındaki yeşil alanın düzenli fotoğraflarını çekip, bulut örtüsü verisi ve tarihi kaydederek mevcut tahmine en çok benzeyen görseli arka plan olarak göstermek
  • Eski bir fotoğraf çerçevesini OpenAI'nin DALL-E görsel üreticisine bağlamıştım

    • Güncel hava durumu verisine göre görsel üretiyor ve birkaç saatte bir güncelleniyor
  • Yr.no uygulamasının ana ekranını hatırlatıyor

    • Hava durumunu pencerenin dışarıdan görünüşü gibi görselleştiriyor
    • Günün yalnızca tek bir anını görebildiğiniz için yatay kaydırmanız gerekiyor
    • Sıcaklık sadece sayı olarak gösteriliyor
  • Benzer bir konsepti Android duvar kağıdı olarak kullanıyorum

    • Faydalı bilgi aktaran sanat eseri fikrini seviyorum
  • UX açısından windy.com en iyi hava durumu raporlama deneyimini sunuyor

    • Bulutların/yağmurun hangi yöne hareket ettiğini görebilmek faydalı
    • Keşke daha fazla rakibi olsa
  • Bu fikir çok havalı

  • Tad Williams'ın Otherland serisini hatırlatıyor

  • İlginç bir fikir ama görsellerin anlamında tuhaf biçimde yanlış olan yerler var

    • Gece gökyüzü aydınlık olmamalı ve gün doğumunda güneş gökyüzünde bu kadar yüksekte olmamalı
    • Gün doğumu ve gün batımını sezgisel simgelerle göstermek iyi olur
    • Windy.com'un zaman çizelgesi görünümü birçok hava durumu bilgisini iyi sıkıştırıp gösteriyor