locale = d3.formatLocale({decimal:",",thousands:".",grouping: [3],currency: ["US$ ",""],minus:"\u2212",percent:"\u202f%"})tip =new d3plus.Tooltip().data([{title:"teste"}]).position([-200,-200]).render();aq_version ='5.3.0'aq = {const aq =awaitrequire(`arquero@${aq_version}`);// optional packages to load, other notebooks can override this!const aq_packages = [];// load and install any additional packages (awaitPromise.all(aq_packages.map(pkg =>require(pkg)))).forEach(pkg => aq.addPackage(pkg));// Add HTML table view method to tables//aq.addTableMethod('view', toView, { override: true });return aq;}op = aq.opsankeyModule =require("d3-sankey@0.12.3/dist/d3-sankey.min.js")
Quanto o BRICS representa do comércio mundial?
O grupo formado por Brasil, Rússia, Índia, China e África do Sul, com a admissão dos novos membros - Arábia Saudita, Egito, Emirados Árabes Unidos, Etiópia, Indonésia e Irã - chegou a compor 39% do Produto Interno Bruto (PIB) mundial e 49% da população mundial, a partir de dados de 2023. Os membros do BRICS representam também parcela relevante do comércio internacional, totalizando respectivamente 26% e 22% das exportações e importações mundiais de bens e 14% e 17% das exportações e importações mundiais de serviços, considerando dados de 2021.
Participação do BRICS
Exportações de bens
Importações de bens
Exportações de serviços
Importações de serviços
Nota: Elaborado pela SECEX/MDIC a partir dos dados do Comtrade/UN e da BaTiS OMC/OCDE para o ano de 2021.
functionplotShare(data, variable, id, color_sq) {const plot_width = d3.select(id).node().getBoundingClientRect().width*0.75;const plot = Plot.plot({width: plot_width,height: plot_width,marginTop:40,x: {axis:null },y: {axis:null },color: {legend:false,range: [color_sq,"#FDE9B9"],className:"legend"},marks: [ Plot.cell(transpose(data), Plot.stackY({x: (_, i) => i %10,fill:"group",title:"group",stroke:"#ffffff" }) ), Plot.text(transpose(data)[0], Plot.stackY({y:5,text:"group" }) ) ],style: {backgroundColor:'#fefbf3' } })const chart = d3.select(plot);// Workaround if there's a legend....// Source: https://observablehq.com/@mkfreeman/plot-tooltipobsconst type = d3.select(plot).node().tagName;let wrapper = type ==="FIGURE"? d3.select(plot).select("svg") : d3.select(plot);const svgs = d3.select(plot).selectAll("svg");if (svgs.size() >1) wrapper = d3.select([...svgs].pop()); wrapper.style("overflow","visible");// to avoid clipping at the edgesconst y = plot.scale("y");const color = plot.scale("color"); wrapper.selectAll("rect").style("fill","#FDE9B9").transition().duration(10).delay((d, i) => (100- i) *10).style("fill", (d) => color.apply(d.group)); wrapper.append("text").attr("x",0.5* plot_width).attr("y",30).text(locale.format(".0%")(0)).style("font-family","Poppins").style("font-size","32px").style("font-weight","bold").style("fill", color_sq).transition().duration(1000).tween("text",function(d) {const that =this;const i = d3.interpolate(0, d3.min(transpose(data), d => d[variable]) /100);// Number(d.percentage.slice(0, -1))returnfunction(t) { d3.select(that).text(locale.format(".0%")(i(t))); }; }); d3.select(id).html("").append(() => plot); d3.select(id).attr("align","center");}viz_shares = {const chart_start = d3.select("#share-exp-goods").classed("start");if(chart_start) {awaitvisibility(); } d3.select("#share-exp-goods").classed("start",false); width;// monitora a largura da janelaplotShare(share_exp_goods,"share","#share-exp-goods","#00a84f");plotShare(share_imp_goods,"share","#share-imp-goods","#00a84f");plotShare(share_exp_services,"share","#share-exp-services","#0587bf");plotShare(share_imp_services,"share","#share-imp-services","#0587bf");}
Como evoluiu o comércio de bens e serviços do BRICS nos últimos anos?
{if (type_evol ==="EXP"& cat_evol ==="goods") {returnhtml`<p></p><p>Em 2005, o total exportado por membros do BRICS foi de US$ 1,7 trilhão. Já em 2021, o total exportado pelo grupo de países chegou a US$ 5,7 trilhões, o que representa um crescimento de 229%. A participação do BRICS no comércio mundial chegou a aproximadamente 26% ao final do período.</p>` }if (type_evol ==="IMP"& cat_evol ==="goods") {returnhtml`<p></p><p>Em 2005, o total importado pelo BRICS foi de US$ 1,3 trilhão. Já em 2021, o total importado pelo grupo de países chegou a US$ 4,7 trilhões, o que representa um crescimento de 266%. A participação do BRICS no comércio mundial chegou a aproximadamente 22% ao final do período.</p>` }if (type_evol ==="EXP"& cat_evol ==="services") {returnhtml`<p></p><p>Em 2005, o total exportado pelo BRICS foi de US$ 236 bilhões. Já em 2021, o total exportado pelo grupo de países chegou a US$ 890 bilhões, o que representa um crescimento de 277%. A participação do BRICS no comércio mundial chegou a aproximadamente 14% ao final do período.</p>` }if (type_evol ==="IMP"& cat_evol ==="services") {returnhtml`<p></p><p>Em 2005, o total importado pelo BRICS foi de US$ 319 bilhões. Já em 2021, o total importado pelo grupo de países chegou a US$ 1 trilhão, o que representa um crescimento de 215%. A participação do BRICS no comércio mundial chegou a aproximadamente 17% ao final do período.</p>` }}
Nota: Elaborado pela SECEX/MDIC a partir dos dados do Comtrade/UN e da base BaTiS - OMC/OCDE. A série compreende o período de 2005 a 2021 em razão da disponibilidade dos dados para todos os países do grupo. Consideram-se BRICS, em toda a série, os 11 países que atualmente compõem o grupo.
Nota: Elaborado pela SECEX/MDIC a partir dos dados do Comtrade/UN e da BaTiS - OMC/OCDE. São considerados intervalos de cinco anos. Os dados de serviços estão disponíveis a partir de 2005. Dessa forma optou-se por considerar os anos de 2006, 2011, 2016 e 2021.
{if (type_evol2 ==="EXP"& cat_evol2 ==="goods") {returnhtml`<p></p><p>Analisando o período entre 2006 e 2021, a China permaneceu como o maior exportador de bens dentro do BRICS. A Índia apresentou crescimento relativo considerável, passando da 6ª posição em 2006 para a 4ª posição em 2021. Os Emirados Árabes Unidos também subiram de posição, da 4ª para a 3ª, ao longo do período, enquanto a Rússia manteve-se em segundo lugar no grupo de países.</p>` }if (type_evol2 ==="IMP"& cat_evol2 ==="goods") {returnhtml`<p></p><p>Analisando o período entre 2006 e 2021, a China permaneceu como o maior importador de bens dentro do BRICS. A Indonésia apresentou crescimento relativo considerável, passando da 8ª posição em 2006 para a 6ª posição em 2021. Os Emirados Árabes Unidos também subiram de posição, da 4ª para a 3ª, ao longo do período, enquanto a Índia manteve-se em segundo lugar no grupo de países.</p>` }if (type_evol2 ==="EXP"& cat_evol2 ==="services") {returnhtml`<p></p><p>Analisando o período entre 2006 e 2021, a China permaneceu como o maior exportador de serviços dentro do BRICS. Os Emirados Árabes Unidos apresentaram crescimento relativo considerável, passando da 9ª posição em 2006 para a 3ª posição em 2021, enquanto a Índia manteve-se em segundo lugar no grupo de países.</p>` }if (type_evol2 ==="IMP"& cat_evol2 ==="services") {returnhtml`<p></p><p>Analisando o período entre 2006 e 2021, a China permaneceu como o maior importador de serviços dentro do BRICS. Os Emirados Árabes Unidos apresentaram crescimento relativo considerável, passando da 6ª posição em 2006 para a 3ª posição em 2021, enquanto a Índia manteve-se em segundo lugar no grupo de países.</p>` }}
plot_posicao = {const chart_start = d3.select("#chart-bump-evol").classed("start");if(chart_start) {awaitvisibility(); }const data_bump =transpose(dados_bump).filter(d => d.flow=== type_evol2 && d.type=== cat_evol2);// filter if year equal to min or to maxconst data_bump2 = data_bump.filter( d => d.year=== d3.min(data_bump, d => d.year) || d.year=== d3.max(data_bump, d => d.year) );const margin = {top:40,right:30,bottom:40,left:80};const height =350; width;// monitora o tamanho da telaconst plot_width = d3.select("#chart-bump-evol").node().getBoundingClientRect().width;const years =newSet(data_bump.map(d => d.year));const plot = Plot.plot({width: plot_width,height: height,marginTop:20,marginBottom:35,marginLeft:75,marginRight:80,y: {reverse:true,axis:null,domain: [0,11.5]},x: {label:"Ano",ticks: years,tickFormat:"d"},style: {fontFamily:"Poppins",fontSize:"14px",fontWeight:"normal",backgroundColor:"#FFFEFE" },marks: [ Plot.lineY(data_bump, {x:"year",y:"rank",z:"agg_code_reporter",stroke:"#a6a6a6",strokeWidth:1,curve:"bump-x", }), Plot.dot(data_bump, {x:"year",y:"rank",size:5,fill:"#a6a6a6" }), Plot.image(data_bump2, {x:"year",y:"rank",src:"flag_file",r:12,dx:0,stroke:"#a6a6a6", }), Plot.text( data_bump2, Plot.selectFirst({x:"year",y:"rank",z:"agg_code_reporter",text: (d) => d.rank+" "+ d.agg_code_reporter,dx:-40, }) ), Plot.text( data_bump2, Plot.selectLast({x:"year",y:"rank",z:"agg_code_reporter",text: (d) => d.rank+" "+ d.agg_code_reporter,dx:40, }) ) ] })// Workaround if there's a legend....// Source: https://observablehq.com/@mkfreeman/plot-tooltipobsconst type_plot = d3.select(plot).node().tagName;let wrapper = type_plot ==="FIGURE"? d3.select(plot).select("svg") : d3.select(plot);const svgs = d3.select(plot).selectAll("svg");if (svgs.size() >1) wrapper = d3.select([...svgs].pop());// Destaque das linhasconst lines = wrapper.select("[aria-label='line']").selectAll("path");// lines// .on("pointerenter", function(event, data) {// event.target// .setAttribute("stroke", "#2c3e50");// })// .on("pointerleave", function(event, data) {// event.target// .setAttribute("stroke", "#a6a6a6");// })// Identifica o código de cada linhalet lines_group = [] lines.each(function(d, i) { lines_group.push(data_bump[d[0]].agg_code_reporter); });// Destaque a partir das bandeirasconst images = wrapper.select("[aria-label='image']").selectAll("image");// Destaque a partir dos pontosconst dots = wrapper.select("[aria-label='dot']").selectAll("circle"); images.on("pointerenter",function(event, data) {const image_data = data_bump2[data];// get the index of image_data.agg_code_reporter in lines_groupconst index = lines_group.indexOf(image_data.agg_code_reporter);// get indexes of data_bump that have the agg_code_reporterconst indexes = data_bump2.map((d, i) => d.agg_code_reporter=== image_data.agg_code_reporter? i :-1).filter(d => d !==-1); images.attr("opacity",0.5); images.filter((d, i) => indexes.includes(i)).attr("opacity",1); lines.filter((d, i) => i === index).attr("stroke","#2c3e50").attr("stroke-width",3); tip.data([image_data]) .position([event.clientX,event.clientY]).title(d => d.name_pt+`<img src="${d.flag_file}" width="40" style="padding-left: 10px;">`).background("#fff").tbody([ ["Ano", d => d.year], ["Posição", d => d.rank], ["Valor (US$ Bilhões)", d => locale.format(",.0f")(d.value)] ]).render(); }).on("pointerleave",function(event, data) {const image_data = data_bump[data];// get the index of image_data.agg_code_reporter in lines_groupconst index = lines_group.indexOf(image_data.agg_code_reporter); lines.filter((d, i) => i === index).attr("stroke","#a6a6a6").attr("stroke-width",1); images.attr("opacity",1); tip.position([-200,-200]).title(d => d.agg_code_reporter) .render(); }) dots.on("pointerenter",function(event, data) {const dot_data = data_bump[data];// get the index of dot_data.agg_code_reporter in lines_groupconst index = lines_group.indexOf(dot_data.agg_code_reporter);// get indexes of data_bump that have the agg_code_reporterconst indexes = data_bump.map((d, i) => d.agg_code_reporter=== dot_data.agg_code_reporter? i :-1).filter(d => d !==-1);const indexes_images = data_bump2.map((d, i) => d.agg_code_reporter=== dot_data.agg_code_reporter? i :-1).filter(d => d !==-1); dots.attr("opacity",0.5); dots.filter((d, i) => indexes.includes(i)).attr("opacity",1); images.attr("opacity",0.5); images.filter((d, i) => indexes_images.includes(i)).attr("opacity",1); lines.filter((d, i) => i === index).attr("stroke","#2c3e50").attr("stroke-width",3); tip.data([dot_data]) .position([event.clientX,event.clientY]).title(d => d.name_pt+`<img src="${d.flag_file}" width="40" style="padding-left: 10px;">`).background("#fff").tbody([ ["Ano", d => d.year], ["Posição", d => d.rank] ]).render(); }).on("pointerleave",function(event, data) {const dot_data = data_bump[data];// get the index of dot_data.agg_code_reporter in lines_groupconst index = lines_group.indexOf(dot_data.agg_code_reporter); lines.filter((d, i) => i === index).attr("stroke","#a6a6a6").attr("stroke-width",1); dots.attr("opacity",1); images.attr("opacity",1); tip.position([-200,-200]).title(d => d.agg_code_reporter) .render(); })// Animation: https://observablehq.com/@giorgi-ghviniashvili/animating-d3-areaconst defs = wrapper.append('defs').append('clipPath').attr('id','clipRank').append('rect').attr('height', height).attr('width',0); lines.attr('clip-path',`url(#clipRank)`); defs.transition().duration(1000).attr('width', plot_width) d3.select("#chart-bump-evol").classed("start",false).html("").append(() => plot);}
Quais são os parceiros e os bens comercializados pelo BRICS?
Relevância do BRICS no comércio de bens dos seus membros
Os membros do BRICS desempenham um papel importante nas redes globais de comércio. Além de grandes exportadores e importadores, com frequência são destino das exportações uns dos outros, refletindo a cooperação econômica entre essas nações. No caso brasileiro, as exportações destinadas a outros países do BRICS somam 37,7% do total exportado, enquanto as importações originárias desses países representam 31,9% do total importado. O comércio exterior é vital para o crescimento econômico, e o BRICS pode desempenhar um papel central nesse cenário.
{if (tipo_fluxo_bens_part_brics =="X") {const title =html`<span class="title-chart">Participação do BRICS como destino das exportações</span>`;return title }if (tipo_fluxo_bens_part_brics =="M") {const title =html`<span class="title-chart">Participação do BRICS como origem nas importações</span>`return title }}
Nota: Elaborado pela SECEX/MDIC a partir dos dados do Comtrade/UN para o ano de 2021.
Visão geral dos fluxos bilaterais do comércio de bens entre membros do BRICS
{const type_title2 = tipo_fluxo_parceiros ==="X"?"Exportações de Bens":"Importações de Bens";returnhtml`<span class="title-chart"> Comércio bilateral</span>`}
Nota: Elaborado pela SECEX/MDIC a partir dos dados do Comtrade/UN para o ano de 2021. Devido a fatores metodológicos e operacionais, é possível que ocorram registros de importações/exportações tendo como origem/destino o próprio país. Como exemplo, estatísticas de importações costumam considerar o país de fabricação da mercadoria. Assim, pode ocorrer de bens serem exportados temporariamente para reparo ou manutenção e, no retorno, registrados como importações originárias do próprio país.
Quando se trata dos principais parceiros comerciais, embora os membros do BRICS conduzam a maior parte de seu comércio com países de fora do grupo, alguns países mantêm relações robustas entre si. Essas transações desempenham um papel relevante nas cadeias de suprimento globais e influenciam o comércio internacional de uma variedade de bens. O gráfico ao lado permite visualizar os fluxos comerciais intrabloco.
Detalhamento dos parceiros comerciais entre membros do BRICS
Com maior detalhamento, esta visualização permite identificar a relevância de cada parceiro como destino das exportações e origem das importações no comércio de bens entre países membros do BRICS.
{const type_title2 = tipo_fluxo_visao_parceiros ==="X"?"Exportações de Bens - "+ reporter_visao_parceiros :"Importações de Bens - "+ reporter_visao_parceiros;returnhtml`<span class="title-chart">${type_title2}</span>`}
Nota: Elaborado pela SECEX/MDIC a partir dos dados do Comtrade/UN para o ano de 2021. Devido a fatores metodológicos e operacionais, é possível que ocorram registros de importações/exportações tendo como origem/destino o próprio país. Como exemplo, estatísticas de importações costumam considerar o país de fabricação da mercadoria. Assim, pode ocorrer de bens serem exportados temporariamente para reparo ou manutenção e, no retorno, registrados como importações originárias do próprio país.
plot_treemap_parceiros = {const chart_start = d3.select("#chart-treemap-parceiros").classed("start");if(chart_start) {awaitvisibility(); }let data_plot =transpose(dados_visao_parceiros_treemap).filter(d => d.flow_code=== tipo_fluxo_visao_parceiros & d.reporter_name_agg=== reporter_visao_parceiros); data_plot = aq.from(data_plot).derive({share: d => d.value/ op.sum(d.value)}).objects();const treemap_data = { name:"root",children: [] };const grupos =Array.from(newSet(data_plot.map(d => d.partner_is_brics)));for (const g in grupos) {const data_grupos = data_plot.filter(d => d.partner_is_brics== grupos[g]);const children = [] data_grupos.forEach(d => { children.push({name: d.partner_name_agg,value: d.value,share: d.share,year: d.period,flag_file: d.flag_file }); }); treemap_data.children.push({name: grupos[g],children: children }); } width;// monitora mudanças no tamanho da janelaconst plot_width = d3.select("#chart-treemap-parceiros").node().getBoundingClientRect().width;const height =400;const hierarchy = d3.hierarchy(treemap_data).sum((d) => d.value).sort((a, b) => b.value- a.value); d3.treemap().size([plot_width, height]).padding(2).tile(d3.treemapBinary) (hierarchy);const leaves = hierarchy.leaves();const plot = Plot.plot({marks: [ Plot.rect(leaves, {x1: d => d.x0,x2: d => d.x1,y1: d =>-d.y0,y2: d =>-d.y1,fill: (d) => d.parent.data.name }), ],color: {legend:false,range: ["#00a84f","#a6a6a6"],className:"legend" },x: { axis:null },y: { axis:null },style: {fontFamily:"Poppins",fontSize:"14px",fontWeight:"normal",backgroundColor:"#fefbf3" },width: plot_width,height: height,marginTop:20 })const type_plot = d3.select(plot).node().tagName;let wrapper = type_plot ==="FIGURE"? d3.select(plot).select("svg") : d3.select(plot);const svgs = d3.select(plot).selectAll("svg");if (svgs.size() >1) wrapper = d3.select([...svgs].pop());// Seleciona os rectsconst rects = wrapper.selectAll("[aria-label='rect']").selectAll("rect");// get nodes attributes from rects as an array of objectsconst nodes = rects.nodes().map((d, i) => {return {x:Math.round(d.getAttribute("x") *1e9) /1e9,y:Math.round(d.getAttribute("y") *1e9) /1e9,width: d.getAttribute("width"),height: d.getAttribute("height"),fill: d.getAttribute("fill"),data: leaves[i].data }; });// Adiciona o texto com tamanhos dinâmicos wrapper.attr("id","textResizeParceiros");setTimeout(() => {new d3plus.TextBox().data(nodes).select('#textResizeParceiros').height(d => d.height-8).width(d => d.width-8).x(d => d.x+5).y(d => d.y+5).text(d => d.data.name+"\n("+ locale.format(".1%")(d.data.share) +")").fontResize(true).fontMin(6).fontMax(18).fontColor(d => d3plus.colorContrast(d.fill, {"light":"#eaeaea","dark":"#585858"}))// .fontColor("#cfcfcf")// .textAnchor('middle')// .verticalAlign('middle')// .fontWeight("bold").fontFamily("Poppins").rotate(0).render(); },700);// Animação rects.data(nodes).attr("height",0).attr("width",0).transition().duration(1000).attr("width", d => d.width).attr("height", d => d.height);// Tooltips rects.on("pointerenter pointermove",function(event, data) {const [x, y] = d3.pointer(event); tip.data([data]) .position([event.clientX,event.clientY]).title( d => d.data.flag_file!=undefined? d.data.name+`<img src="${d.data.flag_file}" width="40" style="padding-left: 10px;">`:`<span style='text-wrap: wrap;'>${d.data.name}</span>` ).background("#fff").tbody([ ["Ano", d => d.data.year], ["Valor (US$ bilhões)", d => locale.format(",.1f")(d.data.value)], ["Participação", d => locale.format(".1%")(d.data.share)] ]).width(300).render(); }).on("pointerout lostpointercapture",function() { tip.position([-200,-200]).title(d => d.data.period) .render(); }) d3.select("#chart-treemap-parceiros").classed("start",false).html("").append(() => plot);}
Principais bens comercializados pelos membros do BRICS
{const type_title = tipo_fluxo_bens ==="X"?"exportados":"importados";returnhtml`<span class="title-chart"> Principais bens ${type_title} pelos membros do BRICS </span>`}
Nota: Elaborado pela SECEX/MDIC a partir dos dados do Comtrade/UN para o ano de 2021 e da Classificação Uniforme para o Comércio Internacional (CUCI). São apresentados as principais divisões da CUCI exportados/importados pelos membros do BRICS. Os dados de exportações consideram os valores reportados pelos exportadores. Da mesma forma, os dados das importações consideram os valores reportados pelos importadores.
Entre os principais produtos comercializados pelos membros do BRICS estão as commodities, como petróleo, gás natural, minérios e metais; as manufaturas, como máquinas e equipamentos elétricos; e produtos agrícolas, como cereais, carne e café.
A partir desta visualização, é possível analisar detalhadamente a pauta de comércio dos membros do BRICS. Os dados são apresentados de forma hierárquica, com as divisões da Classificação Uniforme para o Comércio Internacional (CUCI) representadas por retângulos. Cada retângulo é colorido de acordo com a seção da CUCI a que pertence. A área de cada retângulo é proporcional ao valor do comércio na pauta de cada membro do BRICS.
{const type_title = tipo_fluxo_bens_detalhado ==="X"?"exportações":"importações";returnhtml`<span class="title-chart">Pauta de ${type_title} de bens - ${reporter_visao_produtos}</span>`}
Nota: Elaborado pela SECEX/MDIC a partir dos dados do Comtrade/UN para o ano de 2021. Cada retângulo representa uma divisão da Classificação Uniforme para o Comércio Internacional (CUCI). As cores representam a seção da CUCI.
A parcela dos países do BRICS no comércio mundial de serviços, embora relevante, é menos expressiva do que a observada no comércio de bens. O menor percentual de comércio intrabloco dos países, como destaca este gráfico, revela o potencial de integração a ser explorado.
{if (tipo_fluxo_serv_part_brics =="EXP") {const title =html`<span class="title-chart">Participação do BRICS como destino das exportações</span>`;return title }if (tipo_fluxo_serv_part_brics =="IMP") {const title =html`<span class="title-chart">Participação do BRICS como origem das importações</span>`return title }}
Nota: Elaborado pela SECEX/MDIC a partir dos dados da BaTiS - OMC/OCDE para o ano de 2021.
Visão geral dos fluxos bilaterais do comércio de serviços entre membros do BRICS
{const type_title2 = tipo_fluxo_parceiros_serv ==="EXP"?"Exportações de Serviços":"Importações de Serviços";returnhtml`<span class="title-chart"> Comércio bilateral de serviços</span>`}
Nota: Elaborado pela SECEX/MDIC a partir dos dados da BaTiS - OMC/OCDE para o ano de 2021.
A visualização ao lado apresenta os fluxos comerciais de serviços entre os membros do BRICS e permite identificar os maiores participantes no comércio intrabloco, em que se destacam Índia, Emirados Árabes Unidos, Arábia Saudita e China.
Detalhamento dos parceiros comerciais de serviços entre membros do BRICS
Com maior detalhamento, esta visualização permite identificar a relevância de cada parceiro como destino das exportações e origem das importações no comércio de serviços entre países membros do BRICS.
{const type_title2 = tip_fluxo_visao_parceiros_serv ==="EXP"?"Exportações de Serviços - "+ reporter_visao_parceiros_serv :"Importações de Serviços - "+ reporter_visao_parceiros_serv;returnhtml`<span class="title-chart">${type_title2}</span>`}
Nota: Elaborado pela SECEX/MDIC a partir dos dados da BaTiS - OMC/OCDE para o ano de 2021.
plot_treemap_parceiros_serv = {const chart_start = d3.select("#chart-treemap-serv").classed("start");if(chart_start) {awaitvisibility(); }let data_plot =transpose(dados_visao_parceiros_serv_treemap).filter(d => d.flow_code=== tip_fluxo_visao_parceiros_serv & d.reporter_name_agg=== reporter_visao_parceiros_serv); data_plot = aq.from(data_plot).derive({share: d => d.value/ op.sum(d.value)}).objects();const treemap_data = { name:"root",children: [] };const grupos =Array.from(newSet(data_plot.map(d => d.partner_is_brics)));for (const g in grupos) {const data_grupos = data_plot.filter(d => d.partner_is_brics== grupos[g]);const children = [] data_grupos.forEach(d => { children.push({name: d.partner_name_agg,value: d.value,share: d.share,year: d.period,flag_file: d.flag_file }); }); treemap_data.children.push({name: grupos[g],children: children }); } width;// monitora o tamanho da telaconst plot_width = d3.select("#chart-treemap-serv").node().getBoundingClientRect().width;const height =400;const hierarchy = d3.hierarchy(treemap_data).sum((d) => d.value).sort((a, b) => b.value- a.value); d3.treemap().size([plot_width, height]).padding(2).tile(d3.treemapBinary) (hierarchy);const leaves = hierarchy.leaves();const plot = Plot.plot({marks: [ Plot.rect(leaves, {x1: d => d.x0,x2: d => d.x1,y1: d =>-d.y0,y2: d =>-d.y1,fill: (d) => d.parent.data.name }), ],color: {legend:false,range: ["#0587bf","#a6a6a6"],className:"legend" },x: { axis:null },y: { axis:null },style: {fontFamily:"Poppins",fontSize:"14px",fontWeight:"normal",backgroundColor:"#FFFEFE" },width: plot_width,height: height,marginTop:20 })const type_plot = d3.select(plot).node().tagName;let wrapper = type_plot ==="FIGURE"? d3.select(plot).select("svg") : d3.select(plot);const svgs = d3.select(plot).selectAll("svg");if (svgs.size() >1) wrapper = d3.select([...svgs].pop());// Seleciona os rectsconst rects = wrapper.selectAll("[aria-label='rect']").selectAll("rect");// get nodes attributes from rects as an array of objectsconst nodes = rects.nodes().map((d, i) => {return {x:Math.round(d.getAttribute("x") *1e9) /1e9,y:Math.round(d.getAttribute("y") *1e9) /1e9,width: d.getAttribute("width"),height: d.getAttribute("height"),fill: d.getAttribute("fill"),data: leaves[i].data }; });// Adiciona o texto com tamanhos dinâmicos wrapper.attr("id","textResizeParceirosServ");setTimeout(() => {new d3plus.TextBox().data(nodes).select('#textResizeParceirosServ').height(d => d.height-8).width(d => d.width-8).x(d => d.x+5).y(d => d.y+5).text(d => d.data.name+"\n("+ locale.format(".1%")(d.data.share) +")").fontResize(true).fontMin(6).fontMax(18).fontColor(d => d3plus.colorContrast(d.fill, {"light":"#eaeaea","dark":"#585858"}))// .fontColor("#cfcfcf")// .textAnchor('middle')// .verticalAlign('middle')// .fontWeight("bold").fontFamily("Poppins").rotate(0).render(); },700);// Animação rects.data(nodes).attr("height",0).attr("width",0).transition().duration(1000).attr("width", d => d.width).attr("height", d => d.height);// Tooltips rects.on("pointerenter pointermove",function(event, data) {const [x, y] = d3.pointer(event); tip.data([data]) .position([event.clientX,event.clientY]).title( d => d.data.flag_file!=undefined? d.data.name+`<img src="${d.data.flag_file}" width="40" style="padding-left: 10px;">`:`<span style='text-wrap: wrap;'>${d.data.name}</span>` ).background("#fff").tbody([ ["Ano", d => d.data.year], ["Valor (US$ bilhões)", d => locale.format(",.3f")(d.data.value)], ["Participação", d => locale.format(".1%")(d.data.share)] ]).width(300).render(); }).on("pointerout lostpointercapture",function() { tip.position([-200,-200]).title(d => d.data.period) .render(); }) d3.select("#chart-treemap-serv").classed("start",false).html("").append(() => plot);}
Principais serviços comercializados pelos membros do BRICS
{const type_title = tipo_fluxo_servicos ==="EXP"?"exportados":"importados";returnhtml`<span class="title-chart"> Principais serviços ${type_title} pelos membros do BRICS </span>`}
Nota: Elaboração própria a partir dos dados da BaTiS - OMC/OCDE para o ano de 2021. Os serviços indicados representam uma categoria da EBOPS (Extended Balance of Payments Services Classification). Para uma visão geral dessas categorias, veja este link.
O comércio de serviços pelos membros do BRICS é concentrado em serviços de transporte, viagem e outros serviços empresariais. O setor de transporte, essencial para o comércio de mercadorias, facilita não apenas o intercâmbio comercial, mas também a integração econômica global. Viagens refletem tanto a crescente classe média global quanto o interesse cultural e econômico entre os países do BRICS. Por fim, o agrupamento de outros serviços empresariais contém, por exemplo, serviços relacionados a pesquisa e desenvolvimento, serviços de consultoria, e serviços de arquitetura e engenharia.
Detalhamento dos serviços comercializados pelos membros do BRICS
A partir desta visualização, é possível analisar detalhadamente a pauta de comércio de serviços dos membros do BRICS. A área de cada retângulo é proporcional ao valor do comércio na pauta de cada membro do BRICS. Por exemplo, para o Brasil, as exportações da categoria outros serviços empresariais representam 48,7% do total exportado pelo país em 2021. Já serviços de transporte representam 16,6% das exportações brasileiras.
{const type_title = tipo_fluxo_serv_detalhado ==="EXP"?"exportações":"importações";returnhtml`<span class="title-chart">Pauta de ${type_title} de serviços - ${reporter_visao_servicos}</span>`}
Nota: Elaborado pela SECEX/MDIC a partir dos dados da BaTiS - OMC/OCDE para o ano de 2021. Cada retângulo representa uma categoria de serviços da EBOPS (Extended Balance of Payments Services Classification). Para uma visão geral dessas categorias, veja este link.