Como criar um gráfico usando PHP

Como criar um gráfico usando PHP

Um requisito muito comum do site de negócios está criando um gráfico com base nos dados coletados do site para descobrir diferentes tipos de informações estatísticas dos usuários -alvo e o progresso atual da empresa. Esta informação ajuda a aumentar o negócio mais rápido. Portanto, o programador da web deve obter conhecimento básico de criar o gráfico. O gráfico pode ser gerado por scripts do lado do servidor e do cliente. O desenvolvedor pode selecionar qualquer tipo de script com base nos requisitos do site. Existem algumas vantagens e desvantagens de usar os gráficos do lado do servidor e do lado do cliente. O gráfico gerado pelo script do lado do servidor aumenta a sobrecarga do servidor que torna o site mais lento. Os usuários finais podem perder a paciência quando as imagens do gráfico precisam de mais tempo para baixar. Esse problema de criar um gráfico no site pode ser omitido usando o gráfico do lado do cliente. O gráfico é gerado localmente buscando dados XML ou JSON do servidor em um script do lado do cliente. O gráfico criado pelo script do lado do cliente torna o download mais rápido, e vários gráficos personalizados podem ser criados, como aplicar animação no gráfico e tornar o gráfico atraente. Neste tutorial, você aprenderá a criar o gráfico usando a biblioteca PHP do lado do servidor.

Gráfico do lado do servidor:

Muitas bibliotecas de gráficos PHP do lado de servidor gratuitas e comerciais estão disponíveis agora. pChart, phpchartjs, fusionCharts, jpgraph, etc. são bibliotecas PHP para criar um gráfico do lado do servidor na página da web. Usando o Jpgraph A biblioteca foi explicada neste tutorial criando diferentes tipos de gráficos. A versão gratuita do Jpgraph A biblioteca tem sido usada neste tutorial.

JPGraph:

É uma biblioteca de gráficos baseada em objetos que cria diferentes tipos de gráficos, como gráficos de linha, gráficos de barras e gráficos de pizza. Está disponível em versões gratuitas e pagas. A versão paga é usada para fins comerciais e pode criar um código de barras ou código QR. Você tem que baixar a biblioteca JPgraph antes de usá -la. Vá para o endereço URL a seguir e faça o download da biblioteca:

https: // jpgraph.rede/download/

Depois de baixar a biblioteca, descompacte o arquivo e armazene -o na pasta onde o script PHP será executado. Eu armazenei a pasta dentro /var/www/html/phpcode pasta. Criar diferentes tipos de gráficos usando esta biblioteca será mostrada na parte seguinte deste tutorial.

Exemplo 1: Criando gráfico de linha

Crie um arquivo php com o seguinte script para desenhar um gráfico de linha de cor verde. Uma matriz foi usada para definir os dados para desenhar o gráfico. O Gráfico Objeto tem sido usado para exibir o gráfico e o Lineplot O objeto foi usado para criar o gráfico de linhas usando o Gráfico objeto.

// inclui arquivos necessários para desenhar o gráfico de linha
requim_once ('jpgraph-4.3.5/src/jpgraph.php ');
requim_once ('jpgraph-4.3.5/src/jpgraph_line.php ');
// Defina os dados
$ data = matriz (10,6,16,23,11,9,5);
// Declare o objeto de gráfico
$ gráfico = novo gráfico (400.250);
//Limpar tudo
$ gráfico-> cleartheme ();
// Defina a escala
$ gráfico-> setScale ('textlin');
// Defina o gráfico linear
$ linept = new lineplot ($ dados);
// Defina a cor da linha
$ linept-> setColor ('verde');
// Adicione o gráfico para criar o gráfico
$ gráfico-> add ($ linha);
// exibe o gráfico
$ graph-> stroke ();
?>

Saída:

A saída a seguir aparecerá após a execução do script do servidor:

Exemplo 2: Criando um gráfico de barras acumulado

Crie um arquivo PHP com o seguinte script para desenhar um gráfico de barras acumulado. Duas matrizes foram usadas para definir os dados para desenhar o gráfico. O Gráfico Objeto tem sido usado para exibir o gráfico. O Barlot e accbarplot Objetos foram usados ​​para criar o gráfico de barras acumulado usando o Gráfico objeto.

// inclui arquivos necessários para desenhar o gráfico de barras
requim_once ('jpgraph-4.3.5/src/jpgraph.php ');
requim_once ('jpgraph-4.3.5/src/jpgraph_bar.php ');
// Defina os dados
$ série1 = matriz (10,60,30,70,25,67,10);
$ séries2 = matriz (34,89,56,12,59,70,23);
// declarar objeto para desenhar o gráfico
$ gráfico = novo gráfico (500.300);
//Limpar tudo
$ gráfico-> cleartheme ();
// Defina alguma configuração para o gráfico
$ gráfico-> setScale ("textlin");
$ graph-> setShadow ();
$ gráfico-> img-> setmargin (80,30,20,50);
// Crie objeto e cores para as parcelas de barra
$ B1PLOT = new Barplot ($ Série1);
$ b1plot-> setFillColor ("azul");
$ b2plot = new Barplot ($ série2);
$ b2plot-> setFillColor ("vermelho");
// Crie objeto para o gráfico de barras agrupadas
$ gbplot = new accBarplot (matriz ($ b1plot, $ b2plot));
// Adicione o gráfico para o gráfico
$ gráfico-> add ($ gbplot);
// Defina o título do gráfico, o eixo x e Y-eixo
$ gráfico-> título-> set ("gráfico de barras acumulado");
$ gráfico-> xaxis-> title-> set ("série-1");
$ gráfico-> yaxis-> title-> set ("série-2");
// exibe o gráfico
$ graph-> stroke ();
?>
?>

Saída:

A saída a seguir aparecerá após a execução do script do servidor:

Exemplo 3: Criando gráfico de barras acumulado com gradiente

Crie um arquivo PHP com o seguinte script para desenhar um gráfico de barras acumulado com um gradiente. Duas matrizes foram usadas para definir os dados para desenhar o gráfico. O Gráfico Objeto tem sido usado para exibir o gráfico. O Barlot e accbarplot Objetos foram usados ​​para criar o gráfico de barras acumulado usando o Gráfico objeto. O SetFillGradient () função do Barlot Objeto foi usado no script para definir a cor gradiente do gráfico.

// inclui arquivos necessários para desenhar o gráfico de linha
requim_once ('jpgraph-4.3.5/src/jpgraph.php ');
requim_once ('jpgraph-4.3.5/src/jpgraph_bar.php ');
// Defina os dados
$ série1 = matriz (10,60,30,70,25,67,10);
$ séries2 = matriz (34,89,56,12,59,70,23);
// declarar objeto para desenhar o gráfico
$ gráfico = novo gráfico (500.300);
//Limpar tudo
$ gráfico-> cleartheme ();
// Defina alguma configuração para o gráfico
$ gráfico-> setScale ('textlin');
$ gráfico-> setmargincolor ('branco');
$ gráfico-> título-> set ('gráfico de barras acumulado com gradiente');
// Crie a primeira barra
$ plot1 = new Barplot ($ série1);
$ plot1-> setFillGradient ('laranja', 'ciano', grad_vert);
$ plot1-> setColor ('Darkred');
// Crie a segunda barra
$ plot2 = new Barplot ($ série2);
$ plot2-> setFillGradient ('azul', 'verde', grad_vert);
$ plot2-> setColor ('Darkgreen');
// e junte -se a eles em um bar acumulado
$ gaccplot = new accbarplot ([$ plot1, $ plot2]);
$ gráfico-> add ($ gaccplot);
// exibe o gráfico
$ graph-> stroke ();
?>

Saída:

A saída a seguir aparecerá após a execução do script do servidor:

Exemplo 4: Criando um gráfico de barras agrupadas

Crie um arquivo PHP com o seguinte script para desenhar um gráfico de barras agrupadas. Três matrizes foram usados ​​para definir os dados para desenhar o gráfico. O Gráfico Objeto tem sido usado para exibir o gráfico. O Barplot e GrupoBarplot Objetos foram usados ​​para criar o gráfico de barras agrupadas usando o Gráfico objeto.

// inclui arquivos necessários para desenhar o gráfico de linha
requim_once ('jpgraph-4.3.5/src/jpgraph.php ');
requim_once ('jpgraph-4.3.5/src/jpgraph_bar.php ');
// Defina a série de dados
$ série1 = matriz (10,60,30,70,25,67,10);
$ séries2 = matriz (34,89,56,12,59,70,23);
$ série3 = matriz (20,70,70,14,23,26);
// declarar objeto para desenhar o gráfico
$ gráfico = novo gráfico (500, 300);
//Limpar tudo
$ gráfico-> cleartheme ();
// Defina alguma configuração para o gráfico
$ gráfico-> setScale ("textlin");
$ graph-> setShadow ();
$ gráfico-> img-> setMargin (40,30,40,40);
$ gráfico-> xaxis-> SettickLabels ($ gdatelocale-> getMonth ());
$ gráfico-> xaxis-> title-> setFont (ff_font1, fs_bold);
$ gráfico-> título-> set ('gráfico de barras agrupadas');
$ gráfico-> title-> setFont (ff_font1, fs_bold);
// Crie objetos de plotagem
$ plot1 = new Barplot ($ série1);
$ plot2 = new Barplot ($ série2);
$ plot3 = new Barplot ($ série3);
// Defina alguma configuração para o enredo
$ plot1-> setFillColor ("ciano");
$ plot1-> setShadow ();
$ plot2-> setFillColor ("azul");
$ plot2-> setShadow ();
$ plot3-> setFillColor ("Darkorange");
$ plot3-> setShadow ();
// declarar objeto para o enredo agrupado
$ plot = new GroupBarplot (Array ($ plot1, $ plot2, $ plot3));
// Definir largura da trama
$ plot-> setWidth (0.6);
// Adicione plotagem
$ gráfico-> add ($ plot);
// Desenhe o gráfico
$ graph-> stroke ();
?>

Saída:

A saída a seguir aparecerá após a execução do script do servidor:

Exemplo 5: Criando um gráfico de pizza simples

Crie um arquivo PHP com o seguinte script para desenhar um gráfico de pizza. Uma matriz foi usada para definir os dados para desenhar o gráfico. O Gráfico Objeto tem sido usado para exibir o gráfico e o Pieplot Objeto tem sido usado para criar o gráfico simples de pizza usando o Gráfico objeto.

// inclui arquivos necessários para desenhar o gráfico de linha
requim_once ('jpgraph-4.3.5/src/jpgraph.php ');
requim_once ('jpgraph-4.3.5/src/jpgraph_pie.php ');
// Defina os dados
$ data = matriz (10,15,16,23);
// Declare o objeto de gráfico
$ gráfico = novo piegraph (400, 250);
//Limpar tudo
$ gráfico-> cleartheme ();
// Defina o título para o gráfico
$ gráfico-> title-> set ("simples gráfico de pizza");
// Crie objetos de plotagem
$ plot = novo pieplot ($ dados);
// Adicione plotagem
$ gráfico-> add ($ plot);
// Desenhe o gráfico
$ graph-> stroke ();
?>

Saída:

A saída a seguir aparecerá após a execução do script do servidor:

Exemplo 6: Criando um gráfico de pizza 3D

Crie um arquivo php com o seguinte script para desenhar um gráfico de pizza 3D. Duas matrizes foram usadas para definir os dados para desenhar o gráfico. O Piegraph Objeto tem sido usado para exibir o gráfico e o PiePlo3D Objeto tem sido usado para criar o gráfico simples de pizza usando o Piegraph objeto.

// inclui arquivos necessários para desenhar o gráfico de linha
requim_once ('jpgraph-4.3.5/src/jpgraph.php ');
requim_once ('jpgraph-4.3.5/src/jpgraph_pie.php ');
requim_once ('jpgraph-4.3.5/src/jpgraph_pie3d.php ');
// Defina os dados
$ data = matriz (15, 13, 29, 45, 68, 31);
$ área = array ('dhaka', 'barisal', 'sylhet', 'comilla', 'chandpur', 'bogra');
// Declare o objeto de gráfico
$ gráfico = novo piegraph (550, 300);
//Limpar tudo
$ gráfico-> cleartheme ();
// Defina alguma configuração para o gráfico
$ gráfico-> título-> set ("vendas na área");
$ gráfico-> legend-> setpos (0.01,0.2, 'certo', 'certo');
$ gráfico-> legend-> setColumns (1);
$ gráfico-> legend-> SetLinespacing (15);
// Crie objetos de plotagem
$ plot = novo pieplot3d ($ dados);
$ plot-> setCenter (0.4);
$ plot-> setlendes ($ área);
// Adicione plotagem
$ gráfico-> add ($ plot);
// Desenhe o gráfico
$ graph-> stroke ();
?>

Saída:

A saída a seguir aparecerá após a execução do script do servidor:

Conclusão:

Neste artigo, todos os dados usados ​​nos exemplos anteriores são estáticos. Você pode facilmente buscar dados do servidor de banco de dados usando o PHP e usá -los para criar um gráfico com base em dados dinâmicos. Se você deseja criar um gráfico mais atraente e download mais rápido, pode usar qualquer biblioteca popular do lado do cliente. Esperamos que você tenha achado este artigo útil. Verifique os outros artigos de dica do Linux para obter mais dicas e informações.