REST API থেকে Data Integrate করা গাইড ও নোট

Big Data and Analytics - গুগল চার্ট (Google Charts) - Google Charts এবং External Data Sources Integration
260

Google Charts এর মাধ্যমে ডেটা ভিজ্যুয়ালাইজেশন করতে গেলে, অনেক সময় ডেটা সরাসরি REST API থেকে সংগ্রহ করে ব্যবহার করা হয়। REST API (Representational State Transfer API) বিভিন্ন সার্ভিস বা ডেটাবেস থেকে ডেটা আনার একটি জনপ্রিয় মাধ্যম। Google Charts REST API থেকে ডেটা এনে ব্যবহার করতে সাহায্য করে এবং সেগুলো চার্ট আকারে রেন্ডার করা যায়।

এই টিউটোরিয়ালে, আমরা দেখবো কিভাবে Google Charts ব্যবহার করে REST API থেকে ডেটা নিয়ে, তা চার্টে integrate করতে হবে।


১. REST API থেকে Data Fetch করা

Google Charts-এ REST API থেকে ডেটা fetch করতে সাধারণত JavaScript এর fetch API বা XMLHttpRequest ব্যবহার করা হয়। REST API থেকে ডেটা আসলে এটি JSON ফরম্যাটে হয়, যা সহজেই Google Charts-এ ডেটা তৈরি করতে ব্যবহার করা যায়।

উদাহরণ: REST API থেকে Data Fetch করে Google Charts এ ব্যবহার

ধরা যাক, আমাদের একটি REST API রয়েছে যেখান থেকে আমরা ডেটা পাবো। API থেকে প্রাপ্ত ডেটা JSON ফরম্যাটে থাকবে এবং আমরা তা Google Charts-এ ব্যবহার করব।

উদাহরণ: Fetching Data from REST API and Displaying it on Google Charts

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>Google Charts with REST API</title>
  <script type="text/javascript" src="https://www.gstatic.com/charts/loader.js"></script>
  <script type="text/javascript">
    google.charts.load('current', {'packages':['corechart', 'bar']});
    
    // Data Fetching from REST API
    function fetchDataAndDrawChart() {
      fetch('https://api.example.com/getSalesData')  // Replace with your actual API endpoint
        .then(response => response.json())
        .then(data => {
          // Process the fetched data
          var processedData = processAPIData(data);
          // Draw the chart with the processed data
          drawChart(processedData);
        })
        .catch(error => console.error('Error fetching data:', error));
    }

    // Process API Data into Google Charts format
    function processAPIData(data) {
      var chartData = [['Year', 'Sales']];  // Adding headers

      // Assuming the API returns an array of objects with 'year' and 'sales'
      data.forEach(item => {
        chartData.push([item.year, item.sales]);  // Push each data row
      });

      return chartData;
    }

    // Draw the chart
    function drawChart(data) {
      var dataTable = google.visualization.arrayToDataTable(data);

      var options = {
        title: 'Sales Over the Years',
        hAxis: {title: 'Year'},
        vAxis: {title: 'Sales'},
        legend: { position: 'bottom' }
      };

      var chart = new google.visualization.BarChart(document.getElementById('chart_div'));
      chart.draw(dataTable, options);
    }

    // Load the chart once the API data is available
    google.charts.setOnLoadCallback(fetchDataAndDrawChart);
  </script>
</head>
<body>
  <h2>Google Charts with Data from REST API</h2>
  <div id="chart_div" style="width: 900px; height: 500px;"></div>
</body>
</html>

কোড ব্যাখ্যা:

  1. Data Fetching: fetch() API ব্যবহার করা হয়েছে, যা একটি asynchronous অপারেশন। এটি সার্ভার থেকে ডেটা GET পদ্ধতিতে নেয়।
    • 'https://api.example.com/getSalesData': এখানে আপনার REST API URL বসাতে হবে।
    • .then(response => response.json()): API থেকে প্রাপ্ত JSON ডেটা পার্স করা হচ্ছে।
  2. Processing the Data: API থেকে প্রাপ্ত ডেটা একটি নতুন ফরম্যাটে রূপান্তরিত করা হয়েছে, যাতে তা Google Charts দ্বারা সহজে ব্যবহার করা যায়। আমরা একটি 2D array তৈরি করেছি যেখানে প্রথম সারিতে ['Year', 'Sales'] হেডার এবং পরবর্তী সারিগুলোতে ডেটা রয়েছে।
  3. Drawing the Chart: google.visualization.arrayToDataTable() ফাংশন ব্যবহার করে আমরা Google Charts এর জন্য ডেটা তৈরি করছি এবং google.visualization.BarChart() ফাংশন দিয়ে চূড়ান্ত চার্ট তৈরি করা হচ্ছে।
  4. Error Handling: .catch() ব্লক ব্যবহার করে API থেকে ডেটা ফেচ করার সময় যদি কোনো ত্রুটি ঘটে, তবে তা কনসোলে প্রদর্শিত হবে।

২. REST API থেকে Data Fetch করার ক্ষেত্রে কিছু গুরুত্বপূর্ণ টিপস

২.১. Cross-Origin Resource Sharing (CORS)

  • CORS (Cross-Origin Resource Sharing) একটি নিরাপত্তা ফিচার যা নিশ্চিত করে যে ওয়েব পেজ অন্য ডোমেইনের API অ্যাক্সেস করতে পারবে কিনা। যদি আপনি একটি API থেকে ডেটা ফেচ করছেন যা অন্য ডোমেইনে রয়েছে, তবে CORS সমস্যা আসতে পারে।
  • আপনি যদি CORS সমস্যা সম্মুখীন হন, তবে API সার্ভারকে CORS হেডারস দিয়ে কনফিগার করতে হবে। অথবা আপনি একটি proxy server ব্যবহার করতে পারেন।

২.২. Asynchronous Data Handling

  • যখন আপনি REST API থেকে ডেটা ফেচ করবেন, তখন তা asynchronous হবে, অর্থাৎ ডেটা আসা না পর্যন্ত অন্যান্য কোড চলতে থাকবে। তাই, আপনি ডেটা লোড হওয়া পর্যন্ত চার্ট রেন্ডারিং বন্ধ রাখতে পারেন বা একটি loading indicator প্রদর্শন করতে পারেন।

২.৩. Data Validation

  • API থেকে আসা ডেটা সঠিক কিনা তা যাচাই করা খুবই গুরুত্বপূর্ণ। ডেটা ফেচ করার পর, আপনার কোডে অবশ্যই একটি যাচাই পদ্ধতি থাকতে হবে যাতে ভুল ডেটা দিয়ে চার্ট না তৈরি হয়।
if (!data || !Array.isArray(data) || data.length === 0) {
  console.error('Invalid or empty data');
  return;
}

২.৪. Data Pagination

  • যদি আপনার API থেকে বিশাল পরিমাণ ডেটা আসে, তবে pagination ব্যবহার করে ডেটা আনা উচিত, যাতে আপনার অ্যাপ্লিকেশন স্লো না হয়। REST API অনেক সময় pagination সাপোর্ট করে, যাতে আপনি একবারে ডেটার একটি নির্দিষ্ট অংশ নিয়ে কাজ করতে পারেন।

৩. Conclusion

Google Charts ব্যবহার করে REST API থেকে ডেটা fetch করে এবং তা ভিজ্যুয়ালাইজ করা খুবই সহজ। এটি আপনাকে dynamic data visualization তৈরি করতে সাহায্য করে। ডেটার রূপান্তর, API এর সাথে যোগাযোগ এবং ডেটার সঠিক প্রদর্শন নিশ্চিত করার জন্য কিছু বেস্ট প্র্যাকটিস ব্যবহার করলে পারফরম্যান্স উন্নত হবে। এই প্রক্রিয়ার মাধ্যমে আপনি যেকোনো ধরনের ডেটা চমৎকারভাবে ভিজ্যুয়ালাইজ করতে পারবেন।

Content added By
Promotion

Are you sure to start over?

Loading...