﻿{"id":14504,"date":"2025-07-10T10:00:00","date_gmt":"2025-07-10T08:00:00","guid":{"rendered":"https:\/\/www.sigterritoires.fr\/?p=14504"},"modified":"2025-07-01T10:30:32","modified_gmt":"2025-07-01T08:30:32","slug":"geracao-de-um-relatorio-automatico-com-qgis-e-data-plotly-integracao-de-graficos-em-um-atlas-em-pdf","status":"publish","type":"post","link":"https:\/\/www.sigterritoires.fr\/index.php\/pt\/geracao-de-um-relatorio-automatico-com-qgis-e-data-plotly-integracao-de-graficos-em-um-atlas-em-pdf\/","title":{"rendered":"Gera\u00e7\u00e3o de um relat\u00f3rio autom\u00e1tico com QGIS e Data Plotly: integra\u00e7\u00e3o de gr\u00e1ficos em um atlas em PDF"},"content":{"rendered":"\n<p>Depois de ver como criar e exportar uma s\u00e9rie de gr\u00e1ficos com o <a href=\"https:\/\/www.sigterritoires.fr\/index.php\/pt\/visualize-seus-dados-gis-no-qgis-com-o-plug-in-data-plotly\/\">Data Plotly<\/a>, vamos passar para a pr\u00f3xima etapa: integrar esses gr\u00e1ficos em um atlas do QGIS ou em um relat\u00f3rio automatizado. Esse m\u00e9todo pode ser usado para produzir relat\u00f3rios personalizados em PDF ou planilhas tem\u00e1ticas, uma para cada faixa, munic\u00edpio, local ou entidade.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n<div id=\"ez-toc-container\" class=\"ez-toc-v2_0_82_2 counter-hierarchy ez-toc-counter ez-toc-light-blue ez-toc-container-direction\">\n<div class=\"ez-toc-title-container\">\n<p class=\"ez-toc-title\" style=\"cursor:inherit\">Contenu <\/p>\n<span class=\"ez-toc-title-toggle\"><a href=\"#\" class=\"ez-toc-pull-right ez-toc-btn ez-toc-btn-xs ez-toc-btn-default ez-toc-toggle\" aria-label=\"Toggle Table of Content\"><span class=\"ez-toc-js-icon-con\"><span class=\"\"><span class=\"eztoc-hide\" style=\"display:none;\">Toggle<\/span><span class=\"ez-toc-icon-toggle-span\"><svg style=\"fill: #999;color:#999\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" class=\"list-377408\" width=\"20px\" height=\"20px\" viewBox=\"0 0 24 24\" fill=\"none\"><path d=\"M6 6H4v2h2V6zm14 0H8v2h12V6zM4 11h2v2H4v-2zm16 0H8v2h12v-2zM4 16h2v2H4v-2zm16 0H8v2h12v-2z\" fill=\"currentColor\"><\/path><\/svg><svg style=\"fill: #999;color:#999\" class=\"arrow-unsorted-368013\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"10px\" height=\"10px\" viewBox=\"0 0 24 24\" version=\"1.2\" baseProfile=\"tiny\"><path d=\"M18.2 9.3l-6.2-6.3-6.2 6.3c-.2.2-.3.4-.3.7s.1.5.3.7c.2.2.4.3.7.3h11c.3 0 .5-.1.7-.3.2-.2.3-.5.3-.7s-.1-.5-.3-.7zM5.8 14.7l6.2 6.3 6.2-6.3c.2-.2.3-.5.3-.7s-.1-.5-.3-.7c-.2-.2-.4-.3-.7-.3h-11c-.3 0-.5.1-.7.3-.2.2-.3.5-.3.7s.1.5.3.7z\"\/><\/svg><\/span><\/span><\/span><\/a><\/span><\/div>\n<nav><ul class='ez-toc-list ez-toc-list-level-1 ' ><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-1\" href=\"https:\/\/www.sigterritoires.fr\/index.php\/pt\/geracao-de-um-relatorio-automatico-com-qgis-e-data-plotly-integracao-de-graficos-em-um-atlas-em-pdf\/#Objetivo\" >Objetivo<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-2\" href=\"https:\/\/www.sigterritoires.fr\/index.php\/pt\/geracao-de-um-relatorio-automatico-com-qgis-e-data-plotly-integracao-de-graficos-em-um-atlas-em-pdf\/#Exemplo_de_um_caso_de_uso\" >Exemplo de um caso de uso<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-3\" href=\"https:\/\/www.sigterritoires.fr\/index.php\/pt\/geracao-de-um-relatorio-automatico-com-qgis-e-data-plotly-integracao-de-graficos-em-um-atlas-em-pdf\/#Etapa_1_preparar_os_graficos_para_cada_intervalo\" >Etapa 1: preparar os gr\u00e1ficos para cada intervalo<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-4\" href=\"https:\/\/www.sigterritoires.fr\/index.php\/pt\/geracao-de-um-relatorio-automatico-com-qgis-e-data-plotly-integracao-de-graficos-em-um-atlas-em-pdf\/#Etapa_2_Criar_o_layout_no_Layout_Composer\" >Etapa 2: Criar o layout no Layout Composer<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-5\" href=\"https:\/\/www.sigterritoires.fr\/index.php\/pt\/geracao-de-um-relatorio-automatico-com-qgis-e-data-plotly-integracao-de-graficos-em-um-atlas-em-pdf\/#Etapa_3_inserir_dinamicamente_graficos_PNG\" >Etapa 3: inserir dinamicamente gr\u00e1ficos PNG<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-6\" href=\"https:\/\/www.sigterritoires.fr\/index.php\/pt\/geracao-de-um-relatorio-automatico-com-qgis-e-data-plotly-integracao-de-graficos-em-um-atlas-em-pdf\/#Etapa_4_Exportar_o_atlas\" >Etapa 4: Exportar o atlas<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-7\" href=\"https:\/\/www.sigterritoires.fr\/index.php\/pt\/geracao-de-um-relatorio-automatico-com-qgis-e-data-plotly-integracao-de-graficos-em-um-atlas-em-pdf\/#Bonus_adicione_estatisticas_dinamicas\" >B\u00f4nus: adicione estat\u00edsticas din\u00e2micas<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-8\" href=\"https:\/\/www.sigterritoires.fr\/index.php\/pt\/geracao-de-um-relatorio-automatico-com-qgis-e-data-plotly-integracao-de-graficos-em-um-atlas-em-pdf\/#Para_resumir\" >Para resumir<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-9\" href=\"https:\/\/www.sigterritoires.fr\/index.php\/pt\/geracao-de-um-relatorio-automatico-com-qgis-e-data-plotly-integracao-de-graficos-em-um-atlas-em-pdf\/#deias_para_casos_de_uso\" >deias para casos de uso<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-10\" href=\"https:\/\/www.sigterritoires.fr\/index.php\/pt\/geracao-de-um-relatorio-automatico-com-qgis-e-data-plotly-integracao-de-graficos-em-um-atlas-em-pdf\/#Em_breve%E2%80%A6\" >Em breve\u2026<\/a><\/li><\/ul><\/nav><\/div>\n\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Objetivo\"><\/span>Objetivo<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Criar um relat\u00f3rio din\u00e2mico em PDF por entidade (por exemplo, uma planilha por praia);<\/li>\n\n\n\n<li>Inserir gr\u00e1ficos gerados com o Data Plotly em cada p\u00e1gina do atlas;<\/li>\n\n\n\n<li>Usar as fun\u00e7\u00f5es do QGIS Atlas e um pouco de automa\u00e7\u00e3o.<\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Exemplo_de_um_caso_de_uso\"><\/span>Exemplo de um caso de uso<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<p>Voc\u00ea tem uma camada de releves_dechets e uma camada de praias (ou comunas). Voc\u00ea deseja criar um relat\u00f3rio para cada praia contendo<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>O nome da praia<\/li>\n\n\n\n<li>Um mapa ampliado da \u00e1rea<\/li>\n\n\n\n<li>Um gr\u00e1fico PNG mostrando os res\u00edduos coletados (criado com o Data Plotly)<\/li>\n\n\n\n<li>Algumas estat\u00edsticas din\u00e2micas (soma, m\u00e9dia, etc.)<\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Etapa_1_preparar_os_graficos_para_cada_intervalo\"><\/span>Etapa 1: preparar os gr\u00e1ficos para cada intervalo<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<p>Use o script Python que voc\u00ea viu anteriormente para gerar uma imagem PNG para cada intervalo:graph_Anse_Mourouk.png, graph_Pointe_Coton.png, etc.<\/p>\n\n\n\n<p>Certifique-se de que o nome da imagem corresponda exatamente ao valor do campo de intervalo na camada principal.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Etapa_2_Criar_o_layout_no_Layout_Composer\"><\/span>Etapa 2: Criar o layout no Layout Composer<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<ol class=\"wp-block-list\">\n<li>V\u00e1 para Projeto &gt; Layout &gt; Novo layout<\/li>\n\n\n\n<li>Adicione :\n<ul class=\"wp-block-list\">\n<li>Um quadro de mapa (vinculado \u00e0 camada de intervalo)<\/li>\n\n\n\n<li>Um campo de texto din\u00e2mico (por exemplo, [% \u00ab\u00a0beach\u00a0\u00bb %])<\/li>\n\n\n\n<li>Um quadro de imagem: clique no \u00edcone \u00ab\u00a0Add an image\u00a0\u00bb (Adicionar uma imagem)<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Ativar o Atlas:\n<ul class=\"wp-block-list\">\n<li>Objeto de cobertura = a camada (por exemplo, praias)<\/li>\n\n\n\n<li>Classifica\u00e7\u00e3o (opcional): voc\u00ea pode escolher um campo para a ordem da p\u00e1gina (por exemplo, nome)<\/li>\n\n\n\n<li>Filtrar entidades com uma express\u00e3o (opcional)<\/li>\n\n\n\n<li>Zoom autom\u00e1tico na entidade<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Clique em seu mapa principal no layout (o mapa ser\u00e1 automaticamente centralizado)<\/li>\n\n\n\n<li>No painel Propriedades do objeto, se\u00e7\u00e3o Atributos do Atlas, marque :\n<ul class=\"wp-block-list\">\n<li>\u2705 Controlado por atlas<\/li>\n\n\n\n<li>\u2705 Ajustar \u00e0 entidade<\/li>\n<\/ul>\n<\/li>\n<\/ol>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<figure class=\"wp-block-image size-large\"><a href=\"https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2025\/06\/composeur_plotly.jpg?ssl=1\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" width=\"640\" height=\"382\" data-attachment-id=\"14285\" data-permalink=\"https:\/\/www.sigterritoires.fr\/index.php\/generer-un-rapport-automatique-avec-qgis-et-data-plotly-integrer-des-graphiques-dans-un-atlas-pdf\/composeur_plotly\/\" data-orig-file=\"https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2025\/06\/composeur_plotly.jpg?fit=1680%2C1002&amp;ssl=1\" data-orig-size=\"1680,1002\" data-comments-opened=\"1\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;1&quot;}\" data-image-title=\"composeur_plotly\" data-image-description=\"\" data-image-caption=\"\" data-large-file=\"https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2025\/06\/composeur_plotly.jpg?fit=640%2C382&amp;ssl=1\" src=\"https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2025\/06\/composeur_plotly.jpg?resize=640%2C382&#038;ssl=1\" alt=\"\" class=\"wp-image-14285\" srcset=\"https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2025\/06\/composeur_plotly.jpg?resize=1024%2C611&amp;ssl=1 1024w, https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2025\/06\/composeur_plotly.jpg?resize=300%2C179&amp;ssl=1 300w, https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2025\/06\/composeur_plotly.jpg?resize=768%2C458&amp;ssl=1 768w, https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2025\/06\/composeur_plotly.jpg?resize=1536%2C916&amp;ssl=1 1536w, https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2025\/06\/composeur_plotly.jpg?w=1680&amp;ssl=1 1680w, https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2025\/06\/composeur_plotly.jpg?w=1280&amp;ssl=1 1280w\" sizes=\"auto, (max-width: 640px) 100vw, 640px\" \/><\/a><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Etapa_3_inserir_dinamicamente_graficos_PNG\"><\/span>Etapa 3: inserir dinamicamente gr\u00e1ficos PNG<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<p>No quadro da imagem, marque \u201cImage path from data\u201d (Caminho da imagem a partir dos dados)<\/p>\n\n\n\n<p>Em seguida, digite uma express\u00e3o como :<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>'file:\/\/\/C:\/temp\/export_graphics\/graph_' || \"range\" || '.png'<\/code><\/pre>\n\n\n\n<p>Isso exibir\u00e1 automaticamente a imagem correspondente a cada entidade.<\/p>\n\n\n\n<p>Dica: voc\u00ea pode usar replace(\u00ab\u00a0range\u00a0\u00bb, \u2018 \u2019, \u2018_\u2019) se os nomes dos arquivos n\u00e3o tiverem espa\u00e7os.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<figure class=\"wp-block-image size-large\"><a href=\"https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2025\/06\/composeur_plotly_expression.jpg?ssl=1\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" width=\"640\" height=\"341\" data-attachment-id=\"14286\" data-permalink=\"https:\/\/www.sigterritoires.fr\/index.php\/generer-un-rapport-automatique-avec-qgis-et-data-plotly-integrer-des-graphiques-dans-un-atlas-pdf\/composeur_plotly_expression\/\" data-orig-file=\"https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2025\/06\/composeur_plotly_expression.jpg?fit=1633%2C870&amp;ssl=1\" data-orig-size=\"1633,870\" data-comments-opened=\"1\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}\" data-image-title=\"composeur_plotly_expression\" data-image-description=\"\" data-image-caption=\"\" data-large-file=\"https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2025\/06\/composeur_plotly_expression.jpg?fit=640%2C341&amp;ssl=1\" src=\"https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2025\/06\/composeur_plotly_expression.jpg?resize=640%2C341&#038;ssl=1\" alt=\"\" class=\"wp-image-14286\" srcset=\"https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2025\/06\/composeur_plotly_expression.jpg?resize=1024%2C546&amp;ssl=1 1024w, https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2025\/06\/composeur_plotly_expression.jpg?resize=300%2C160&amp;ssl=1 300w, https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2025\/06\/composeur_plotly_expression.jpg?resize=768%2C409&amp;ssl=1 768w, https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2025\/06\/composeur_plotly_expression.jpg?resize=1536%2C818&amp;ssl=1 1536w, https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2025\/06\/composeur_plotly_expression.jpg?w=1633&amp;ssl=1 1633w, https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2025\/06\/composeur_plotly_expression.jpg?w=1280&amp;ssl=1 1280w\" sizes=\"auto, (max-width: 640px) 100vw, 640px\" \/><\/a><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large\"><a href=\"https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2025\/06\/composeur_plotly_graphique.jpg?ssl=1\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" width=\"640\" height=\"431\" data-attachment-id=\"14287\" data-permalink=\"https:\/\/www.sigterritoires.fr\/index.php\/generer-un-rapport-automatique-avec-qgis-et-data-plotly-integrer-des-graphiques-dans-un-atlas-pdf\/composeur_plotly_graphique\/\" data-orig-file=\"https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2025\/06\/composeur_plotly_graphique.jpg?fit=1271%2C855&amp;ssl=1\" data-orig-size=\"1271,855\" data-comments-opened=\"1\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;1&quot;}\" data-image-title=\"composeur_plotly_graphique\" data-image-description=\"\" data-image-caption=\"\" data-large-file=\"https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2025\/06\/composeur_plotly_graphique.jpg?fit=640%2C431&amp;ssl=1\" src=\"https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2025\/06\/composeur_plotly_graphique.jpg?resize=640%2C431&#038;ssl=1\" alt=\"\" class=\"wp-image-14287\" srcset=\"https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2025\/06\/composeur_plotly_graphique.jpg?resize=1024%2C689&amp;ssl=1 1024w, https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2025\/06\/composeur_plotly_graphique.jpg?resize=300%2C202&amp;ssl=1 300w, https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2025\/06\/composeur_plotly_graphique.jpg?resize=768%2C517&amp;ssl=1 768w, https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2025\/06\/composeur_plotly_graphique.jpg?w=1271&amp;ssl=1 1271w\" sizes=\"auto, (max-width: 640px) 100vw, 640px\" \/><\/a><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Etapa_4_Exportar_o_atlas\"><\/span>Etapa 4: Exportar o atlas<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Clique em \u201cExportar Atlas como PDF\u201d;<\/li>\n\n\n\n<li>Escolha uma pasta de sa\u00edda;<\/li>\n\n\n\n<li>Cada p\u00e1gina conter\u00e1: o mapa, o nome da praia, o gr\u00e1fico e as informa\u00e7\u00f5es associadas.<\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Bonus_adicione_estatisticas_dinamicas\"><\/span>B\u00f4nus: adicione estat\u00edsticas din\u00e2micas<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<p>Adicione campos de texto usando express\u00f5es do QGIS, como :<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>aggregate(\u2018releves_dechets\u2019, \u2018sum\u2019, \u201cquantite\u201d, filter := \u201cplage\u201d = attribute(@atlas_feature, \u2018plage\u2019))<\/code><\/pre>\n\n\n\n<p>Isso produz totais ou m\u00e9dias autom\u00e1ticas para cada registro.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Para_resumir\"><\/span>Para resumir<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Etapa<\/th><th>Fun\u00e7\u00e3o <\/th><\/tr><\/thead><tbody><tr><td>Gerar gr\u00e1ficos<\/td><td>Com Data Plotly + Python<\/td><\/tr><tr><td>Layout personalizado<\/td><td>Compositor QGIS<\/td><\/tr><tr><td>Inser\u00e7\u00e3o autom\u00e1tica<\/td><td>Campos din\u00e2micos + caminho para PNG<\/td><\/tr><tr><td>Exportar PDF de v\u00e1rias p\u00e1ginas<\/td><td>Fun\u00e7\u00e3oAtlas<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"deias_para_casos_de_uso\"><\/span>deias para casos de uso<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Folhas de observa\u00e7\u00e3o por munic\u00edpio (fauna, flora, res\u00edduos)<\/li>\n\n\n\n<li>Relat\u00f3rios ambientais por local<\/li>\n\n\n\n<li>Mapas e gr\u00e1ficos do censo<\/li>\n\n\n\n<li>Monitoramento de locais ou projetos<\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Em_breve%E2%80%A6\"><\/span>Em breve\u2026<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<p>No pr\u00f3ximo artigo, daremos um passo adiante e mostraremos como criar um painel din\u00e2mico no pr\u00f3prio QGIS, sem sair do ambiente do GIS: combine Data Plotly, express\u00f5es, widgets e pain\u00e9is para criar uma interface de an\u00e1lise em tempo real.<strong> r\u00e9el<\/strong>.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<p><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Depois de ver como criar e exportar uma s\u00e9rie de gr\u00e1ficos com o Data Plotly, vamos passar para a pr\u00f3xima etapa: integrar esses gr\u00e1ficos em um atlas do QGIS ou em um relat\u00f3rio automatizado. Esse m\u00e9todo&hellip;<\/p>\n","protected":false},"author":1,"featured_media":14510,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"give_campaign_id":0,"_bbp_topic_count":0,"_bbp_reply_count":0,"_bbp_total_topic_count":0,"_bbp_total_reply_count":0,"_bbp_voice_count":0,"_bbp_anonymous_reply_count":0,"_bbp_topic_count_hidden":0,"_bbp_reply_count_hidden":0,"_bbp_forum_subforum_count":0,"sfsi_plus_gutenberg_text_before_share":"","sfsi_plus_gutenberg_show_text_before_share":"","sfsi_plus_gutenberg_icon_type":"","sfsi_plus_gutenberg_icon_alignemt":"","sfsi_plus_gutenburg_max_per_row":"","_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"jetpack_post_was_ever_published":false,"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_memberships_contains_paid_content":false,"footnotes":""},"categories":[3418,2134],"tags":[3470,3430],"class_list":["post-14504","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-pluigin-pt","category-qgis","tag-data-plotly-pt","tag-graphiques-pt"],"aioseo_notices":[],"jetpack_featured_media_url":"https:\/\/i0.wp.com\/www.sigterritoires.fr\/wp-content\/uploads\/2025\/06\/composeur_plotly_expression-3.jpg?fit=1633%2C870&ssl=1","jetpack_shortlink":"https:\/\/wp.me\/p6XU0A-3LW","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/www.sigterritoires.fr\/index.php\/wp-json\/wp\/v2\/posts\/14504","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.sigterritoires.fr\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.sigterritoires.fr\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.sigterritoires.fr\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.sigterritoires.fr\/index.php\/wp-json\/wp\/v2\/comments?post=14504"}],"version-history":[{"count":0,"href":"https:\/\/www.sigterritoires.fr\/index.php\/wp-json\/wp\/v2\/posts\/14504\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.sigterritoires.fr\/index.php\/wp-json\/wp\/v2\/media\/14510"}],"wp:attachment":[{"href":"https:\/\/www.sigterritoires.fr\/index.php\/wp-json\/wp\/v2\/media?parent=14504"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.sigterritoires.fr\/index.php\/wp-json\/wp\/v2\/categories?post=14504"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.sigterritoires.fr\/index.php\/wp-json\/wp\/v2\/tags?post=14504"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}