H3 के हिसाब से, पीओआई की संख्या के बारे में क्वेरी करना

PLACES_COUNT_PER_H3 फ़ंक्शन, लोकप्रिय जगहों (पीओआई) के डेटा को तय किए गए रिज़ॉल्यूशन पर, स्टैंडर्ड H3 स्पैटियल ग्रिड सेल में इकट्ठा करता है. इलाके के हिसाब से घनत्व का विश्लेषण करने, कॉम्पटिटिव मैपिंग करने, और हेक्सागोनल कोरोप्लेथ हीटमैप जनरेट करने के लिए, इस फ़ंक्शन का इस्तेमाल करने का सुझाव दिया जाता है.

PLACES_COUNT_PER_H3 फ़ंक्शन को कॉल करने के लिए, एसक्यूएल FROM क्लॉज़ का इस्तेमाल करें, क्योंकि यह फ़ंक्शन एक टेबल दिखाता है.

सिंटैक्स और पैरामीटर

SELECT * FROM `PROJECT_NAME.LINKED_DATASET_NAME.PLACES_COUNT_PER_H3`(
  filters
)

पैरामीटर

  • PROJECT_NAME: आपके Google Cloud प्रोजेक्ट का नाम. अगर आपने प्रोजेक्ट का नाम नहीं बताया है, तो आपकी क्वेरी डिफ़ॉल्ट रूप से, चालू प्रोजेक्ट के लिए होगी.
  • LINKED_DATASET_NAME: आपके सदस्यता लिए हुए जगहों की अहम जानकारी डेटासेट का नाम (उदाहरण के लिए, places_insights___us).
  • filters (JSON): JSON ऑब्जेक्ट, JSON_OBJECTजिसमें कुंजी-वैल्यू वाले फ़िल्टर पैरामीटर शामिल होते हैं.

ज़रूरी JSON फ़िल्टर

  • geography (GEOGRAPHY): इंडेक्स किया जाने वाला, खोज का दायरा (पॉइंट, लाइनस्ट्रिंग या पॉलीगॉन).
  • h3_resolution (INTEGER): H3 सेल का रिज़ॉल्यूशन लेवल. इसकी मान्य वैल्यू 0 से 11 तक होती हैं.

ज़रूरी नहीं JSON फ़िल्टर

  • हर सेल में गिने जाने वाले प्लेस को फ़िल्टर करने के लिए, types, business_status, price_level, और min_rating जैसे अतिरिक्त पैरामीटर. फ़िल्टर पैरामीटर की पूरी सूची देखें .

आउटपुट टेबल स्कीमा

यह फ़ंक्शन, BigQuery की एक टेबल दिखाता है. इसमें, आपके टारगेट ज्यामिति को इंटरसेक्ट करने वाले हर H3 सेल इंडेक्स के लिए एक पंक्ति होती है:

कॉलम का नाम डेटा टाइप ब्यौरा
h3_cell_index STRING सेल के लिए यूनीक H3 इंडेक्स आइडेंटिफ़ायर.
geography GEOGRAPHY H3 सेल की असल सीमा दिखाने वाला पॉलीगॉन.
count INTEGER इस खास H3 सेल में, काम करने वाली मिलती-जुलती जगहों की कुल संख्या. अगर कोई जगह मैच नहीं होती है, तो यह संख्या शून्य होती है.
sample_place_ids ARRAY<STRING> इस सेल में मौजूद, 250 तक प्लेस आईडी का कलेक्शन. इससे Places API का इस्तेमाल करके, सीधे तौर पर ग्राउंड-ट्रुथ क्वेरी की जा सकती हैं.

PLACES_COUNT_PER_H3 का इस्तेमाल करके, इलाके के हिसाब से लोकप्रिय जगहों के घनत्व को इकट्ठा करना

यह फ़ंक्शन, आपके फ़िल्टर में बताई गई सीमा वाली जगह को प्रोसेस करता है. साथ ही, आपके टारगेट रिज़ॉल्यूशन पर इंटरसेक्ट करने वाले सभी H3 हेक्सागॉन की पहचान करता है. इसके अलावा, हर हेक्सागॉन के लिए, जगहों की सटीक संख्या और प्लेस आईडी दिखाता है.

उदाहरण: न्यूयॉर्क राज्य में, व्हीलचेयर से ऐक्सेस किए जा सकने वाले किराने और सुविधा स्टोर की संख्या

इस क्वेरी में, न्यूयॉर्क राज्य में व्हीलचेयर से ऐक्सेस किए जा सकने वाले, काम करने वाले सुविधा और किराने के स्टोर की संख्या को इकट्ठा किया जाता है. इसके लिए, H3 रिज़ॉल्यूशन लेवल 8 का इस्तेमाल किया जाता है. न्यूयॉर्क राज्य की सीमा वाली ज्यामिति को, bigquery-public-data.geo_us_boundaries.states सार्वजनिक डेटासेट से डाइनैमिक तरीके से क्वेरी किया जाता है.

-- Query POI count per H3 cell intersecting the New York State polygon boundary
SELECT *
FROM `PROJECT_NAME.places_insights___us.PLACES_COUNT_PER_H3`(
  JSON_OBJECT(
      'geography', (
        -- Dynamically retrieve the boundary geography for New York State
        SELECT state_geom
        FROM `bigquery-public-data.geo_us_boundaries.states`
        WHERE state = 'NY'
        LIMIT 1
      ),
      'types', ['grocery_store', 'convenience_store'],
      'business_status', ['OPERATIONAL'],
      'h3_resolution', 8,
      'wheelchair_accessible_entrance', TRUE
  )
)
ORDER BY count DESC;

जवाब का फ़ॉर्मैट

क्वेरी से, सेल को सीधे तौर पर स्पैटियल काउंट पर मैप करने वाली, पंक्ति-दर-पंक्ति टेबल मिलती है:

H3 क्वेरी के लिए BigQuery के नतीजे.

उदाहरण: ब्रैंड के हिसाब से फ़िल्टर किए गए, हर H3 सेल में मौजूद जगहों की संख्या

यहां दिए गए उदाहरण में, brand_ids फ़िल्टर का इस्तेमाल करके, खास ब्रैंड के लिए जगहों की संख्या और सैंपल प्लेस आईडी वापस पाए जाते हैं. जैसे, Starbucks "1413758728321880760" और Dunkin "1314981297593671295":

DECLARE geo GEOGRAPHY;

-- Get the geography for New York City.
SET geo = (SELECT geometry FROM `bigquery-public-data.overture_maps.division_area`
  WHERE country = 'US' AND subtype = 'locality' AND names.primary = 'New York'  LIMIT 1);

SELECT * FROM `PROJECT_NAME.places_insights___us.PLACES_COUNT_PER_H3`(
  JSON_OBJECT(
      'geography', geo,
      'h3_resolution', 8,
      'brand_ids', ["1413758728321880760", "1314981297593671295"],
      'business_status', ['OPERATIONAL']
    )
);

Looker Studio में H3 के नतीजों को डाइनैमिक तरीके से विज़ुअलाइज़ करना

यहां दी गई इमेज में, PLACES_COUNT_PER_H3 का डेटा, Looker Studio में भरे गए मैप के तौर पर दिखाया गया है. H3 सेल जितना गहरा होगा, नतीजों की संख्या उतनी ही ज़्यादा होगी:

न्यूयॉर्क में व्हीलचेयर से पहुंचा जा सकने वाले किराने की दुकानों और सुविधा स्टोर को फ़िल्टर करने के लिए, भरे गए मैप का इस्तेमाल किया गया है.

अपने डेटा को Looker Studio में इंपोर्ट करने के लिए:

  1. अपने नतीजे जनरेट करने के लिए, BigQuery में ऊपर दिया गया फ़ंक्शन चलाएं.
  2. BigQuery के नतीजों वाले पैनल में, इसमें खोलें -> Looker Studio पर क्लिक करें. आपके नतीजे, Looker Studio में अपने-आप इंपोर्ट हो जाते हैं.
  3. Looker Studio, डिफ़ॉल्ट रूप से एक रिपोर्ट पेज बनाता है. साथ ही, इसमें नतीजों का टाइटल, टेबल, और बार ग्राफ़ शामिल करता है.

    Looker Studio में डिफ़ॉल्ट रिपोर्ट.

  4. पेज पर मौजूद सब कुछ चुनें और उसे मिटाएं.

  5. अपनी रिपोर्ट में भरा गया मैप जोड़ने के लिए, इंसर्ट करें - > भरा गया मैप पर क्लिक करें.

  6. चार्ट के टाइप -> सेटअप में जाकर, फ़ील्ड को यहां दिखाए गए तरीके से कॉन्फ़िगर करें:

    Looker Studio में हीटमैप सेट अप करना.

  7. भरा गया मैप, ऊपर दिखाए गए तरीके से दिखता है. मैप की दिखावट को और कॉन्फ़िगर करने के लिए, चार्ट के टाइप -> स्टाइल को चुना जा सकता है.

Places Insights के नतीजों को विज़ुअलाइज़ करने के बारे में ज़्यादा जानने के लिए, क्वेरी के नतीजे विज़ुअलाइज़ करना लेख पढ़ें.

उदाहरण: खास फ़िल्टर के साथ, H3 सेल के हिसाब से पीओआई की पिछली संख्या के लिए क्वेरी करना

इस उदाहरण में, snapshot_date फ़िल्टर का इस्तेमाल करके, किसी खास स्नैपशॉट महीने के लिए, H3 स्पैटियल ग्रिड में पीओआई की पिछली संख्या के लिए क्वेरी करने का तरीका बताया गया है. इसमें, किसी जगह के आस-पास बफ़र का इस्तेमाल करके, भौगोलिक खोज का दायरा तय किया जाता है. साथ ही, ईवी चार्जिंग कनेक्टर की संख्या के लिए, max_ev_charge_connector_count के साथ-साथ, regular_opening_hours का इस्तेमाल करके, अतिरिक्त शर्तें लागू की जाती हैं.

SELECT *
FROM `PROJECT_NAME.places_insights___us.PLACES_COUNT_PER_H3`(
  JSON_OBJECT(
    'geography', ST_BUFFER(ST_GEOGPOINT(-74.0060, 40.7128), 5000), -- 5km radius around NYC
    'h3_resolution', 8,
    'business_status', ['OPERATIONAL'],
    'snapshot_date', '2026-01', -- Target snapshot month (YYYY-MM)
    'max_ev_charge_connector_count', 3, -- Maximum connector count
    'regular_opening_hours', JSON_OBJECT(
      'monday', [JSON_OBJECT('start_time', '09:00', 'end_time', '12:00')]
    )
  )
);