Изучение методов создания круговых диаграмм Google с центром ценностей: подробное руководство

Визуализация данных играет решающую роль в эффективном представлении информации. Круговые диаграммы — популярный выбор для отображения пропорций и процентов. В этой статье мы рассмотрим несколько методов создания круговых диаграмм Google со значениями, отображаемыми в центре. Мы предоставим примеры кода для демонстрации каждого метода, что позволит вам выбрать тот, который лучше всего соответствует вашим потребностям.

Метод 1: API Google Charts
Google Charts — это мощная библиотека диаграмм на основе JavaScript, позволяющая создавать интерактивные и настраиваемые диаграммы. Чтобы создать круговую диаграмму с центром ценности, вы можете использовать API Google Charts и настроить параметры диаграммы.

<!DOCTYPE html>
<html>
<head>
  <script type="text/javascript" src="https://www.gstatic.com/charts/loader.js"></script>
  <script type="text/javascript">
    google.charts.load('current', {'packages':['corechart']});
    google.charts.setOnLoadCallback(drawChart);
    function drawChart() {
      var data = google.visualization.arrayToDataTable([
        ['Task', 'Hours per Day'],
        ['Work', 8],
        ['Sleep', 8],
        ['Study', 4],
        ['Exercise', 2],
        ['Socialize', 2]
      ]);
      var options = {
        title: 'Daily Activities',
        pieHole: 0.5,
        pieSliceText: 'none',
        legend: 'none',
        pieSliceBorderColor: 'transparent',
        slices: {
          0: { textStyle: { color: 'black', fontSize: 14 } },
          1: { textStyle: { color: 'black', fontSize: 14 } },
          2: { textStyle: { color: 'black', fontSize: 14 } },
          3: { textStyle: { color: 'black', fontSize: 14 } },
          4: { textStyle: { color: 'black', fontSize: 14 } }
        },
        chartArea: { left: 30, top: 50, width: '100%', height: '80%' }
      };
      var chart = new google.visualization.PieChart(document.getElementById('piechart'));
      chart.draw(data, options);
    }
  </script>
</head>
<body>
  <div id="piechart" ></div>
</body>
</html>

Метод 2: Chart.js
Chart.js — это популярная библиотека диаграмм JavaScript с открытым исходным кодом, которая поддерживает различные типы диаграмм, включая круговые диаграммы. Настраивая параметры диаграммы, мы можем создать круговую диаграмму со значениями по центру.

<!DOCTYPE html>
<html>
<head>
  <script src="https://cdn.jsdelivr.net/npm/chart.js"></script>
  <style>
    canvas {
      display: block;
      margin: 0 auto;
    }
  </style>
</head>
<body>
  <canvas id="myChart" width="400" height="400"></canvas>
  <script>
    var ctx = document.getElementById('myChart').getContext('2d');
    var myChart = new Chart(ctx, {
      type: 'pie',
      data: {
        labels: ['Work', 'Sleep', 'Study', 'Exercise', 'Socialize'],
        datasets: [{
          data: [8, 8, 4, 2, 2],
          backgroundColor: ['#ff6384', '#36a2eb', '#cc65fe', '#ffce56', '#4bc0c0'],
          hoverBackgroundColor: ['#ff6384', '#36a2eb', '#cc65fe', '#ffce56', '#4bc0c0'],
        }]
      },
      options: {
        title: {
          display: true,
          text: 'Daily Activities',
          fontSize: 16,
          fontColor: 'black'
        },
        legend: {
          display: false
        },
        tooltips: {
          enabled: false
        }
      }
    });
  </script>
</body>
</html>

Метод 3: D3.js
D3.js — это мощная библиотека JavaScript для создания интерактивных визуализаций данных. Он обеспечивает гибкий и настраиваемый подход к созданию круговых диаграмм, включая размещение значений в центре.

<!DOCTYPE html>
<html>
<head>
  <script src="https://d3js.org/d3.v7.min.js"></script>
  <style>
    svg {
      display: block;
      margin: 0 auto;
    }
  </style>
</head>
<body>
  <svg id="piechart" width="400" height="400"></svg>
  <script>
    var data = [
      { label: 'Work', value: 8 },
      { label: 'Sleep', value: 8 },
      { label: 'Study', value: 4 },
      { label: 'Exercise', value: 2 },
      { label: 'Socialize', value: 2 }
    ];
    var width = 400;
    var height = 400;
    var radius = Math.min(width, height) / 2;
    var svg = d3.select('#piechart')
      .append('svg')
      .attr('width', width)
      .attr('height', height)
      .append('g')
      .attr('transform', 'translate(' + width / 2 + ',' + height / 2 + ')');
    var color = d3.scaleOrdinal()
      .domain(data.map(function(d) { return d.label; }))
      .range(['#ff6384', '#36a2eb', '#cc65fe', '#ffce56', '#4bc0c0']);
    var pie = d3.pie()
      .value(function(d) { return d.value; });
    var path = d3.arc()
      .outerRadius(radius - 10)
      .innerRadius(0);
    var label = d3.arc()
      .outerRadius(radius - 40)
      .innerRadius(radius - 40);
    var arcs = svg.selectAll('arc')
      .data(pie(data))
      .enter()
      .append('g')
      .attr('class', 'arc');
    arcs.append('path')
      .attr('d', path)
      .attr('fill', function(d) { return color(d.data.label); });
    arcs.append('text')
      .attr('transform', function(d) { return 'translate(' + label.centroid(d) + ')'; })
      .attr('text-anchor', 'middle')
      .text(function(d) { return d.data.value; })
      .attr('fill', 'black')
      .attr('font-size', 14);
    svg.append('text')
      .attr('x', 0)
      .attr('y', 0)
      .attr('text-anchor', 'middle')
      .text('Daily Activities')
      .attr('fill', 'black')
      .attr('font-size', 16);
  </script>
</body>
</html>

В этой статье мы рассмотрели три различных метода создания круговых диаграмм Google со значениями, отображаемыми в центре. Мы продемонстрировали, как этого добиться с помощью API Google Charts, Chart.js и D3.js. Каждый метод предлагает свои преимущества и возможности настройки, что позволяет вам выбрать тот, который лучше всего соответствует требованиям вашего проекта. Включив эти интерактивные и визуально привлекательные диаграммы в свои веб-приложения, вы сможете эффективно представлять данные и повышать вовлеченность пользователей.