4  Matemática financeira: crescimento, tempo e decisão

O MUNDO TE CHAMA

Você já percebeu que o dinheiro parece ter vida própria ?

Ele cresce no banco (e quase sempre cresce ainda mais para o banco), aumenta em financiamentos, muda de valor com o tempo e, às vezes, parece desaparecer silenciosamente do seu bolso. Isso acontece porque o tempo transforma valores. Mas o tempo, sozinho, não é o verdadeiro responsável. O que realmente altera o dinheiro são processos variados, como juros, inflação, investimentos, dívidas, consumo, aportes sucessivos, e crescimento acumulado.

Todos eles dependem da forma como pequenas variações se acumulam ao longo do tempo. Em alguns casos, o crescimento acontece de forma previsível e linear, e em outros, acontece de forma acelerada, e quase explosiva. É justamente por isso que duas pessoas podem começar com o mesmo dinheiro e terminar em situações completamente diferentes alguns anos depois.

Neste capítulo, você tem a chance de explorar alguns mundos diferentes da Matemática Financeira, toda ela baseada em juros simples e juros compostos. Nos juros simples, o crescimento ocorre em linha reta e os juros são sempre calculados sobre o valor inicial. Já nos juros compostos, o valor cresce de modo acumulativo, com crescimento acelerado e exponencial, consistindo num dos fenômenos matemáticos mais importantes do mundo moderno.

Depois de explorar, você consegue:

- diferenciar crescimento linear e exponencial;
- interpretar juros em situações concretas;
- compreender o papel do tempo, da taxa e dos aportes;
- perceber a diferença entre valor nominal e valor real;
- modelar situações financeiras simples com código;
- tomar decisões mais conscientes em contextos cotidianos;
- explorar a matemática financeira com auxílio de aplicações computacionais.
Figura 4.1: Matemática financeira é uma forma de interpretar decisões humanas sobre dinheiro ao longo do tempo.

MEXA ANTES DE ENTENDER

A proposta inicial neste capítulo é você observar como um capital evolui quando submetido a uma taxa fixa ao longo do tempo, bem como perceber os padrões associados a dívidas, financiamentos ou rendimentos sob essa regra. Antes de qualquer definição formal, experimente o JSPlotly que segue, para juros simples.

Figura 4.2: Juros simples: quando o dinheiro cresce ou desaparece em linha reta. Clique com o botão direito neste LINK para abrir o app em nova aba.

Agite antes de usar

Você pode alterar os valores iniciais do código aqui, executando em seguida o script (add):

const capitalInicial = 1000;
const taxa = 0.05;
const tempoMax = 20;

Teste primeiro pequenas mudanças. Aumente o capital inicial, diminua a taxa, aumente o tempo máximo, e compare gráficos com taxas diferentes. Observe que, em juros simples, o crescimento do dinheiro não acelera. Isso acontece porque os juros são sempre calculados sobre o mesmo valor inicial.

Se o capital inicial é \(C\), a taxa é \(i\) e o tempo é \(t\), então o juro acumulado é:

\[ J = C \cdot i \cdot t \tag{4.1}\]

E o montante final, o dinheiro acumulado (investimento ou dívida) é:

\[ M = C + J \tag{4.2}\]

Substituindo \(J\), temos:

\[ M = C \cdot (1 + i \cdot t) \tag{4.3}\]

Perceba que, não importando as equações acima, há sempre uma relação linear entre montante e tempo.

Dessa forma, o script constrói uma lista de tempos e calcula, para cada período, o montante correspondente nesse trecho:

for (let t = 0; t <= tempoMax; t++) {
    let J = capitalInicial * taxa * t;
    let M = capitalInicial + J;

    tempo.push(t);
    juros.push(J);
    montante.push(M);
}

Nesse modelo, t representa o tempo, J os juros acumulados, e M o montante. O script então guarda os valores em listas para formar o gráfico. O resultado é uma reta crescente, pois o acréscimo a cada período é sempre o mesmo.

Uma sugestão para mexer no app é dada abaixo.

  1. Execute o script com os valores originais;
  2. Observe o formato da curva;
  3. Altere taxa para 0.02, 0.05, 0.10 e 0.20;
  4. Compare a inclinação das retas;
  5. Altere capitalInicial para valores maiores ou menores;
  6. Observe que o gráfico muda de escala, mas continua linear;
  7. Aumente tempoMax e perceba que a reta se prolonga sem mudar de forma.

Traduzindo…nos juros simples, o tempo aumenta o montante de forma proporcional e linear, quer seja um investimento de capital, quer seja uma dívida.

Agora sim, alguns cenários para você explorar.

  1. Pequena poupança. Edite o código e responda quanto o dinheiro cresce em um ano com uma taxa pequena.
const capitalInicial = 500;
const taxa = 0.02;
const tempoMax = 12;
  1. Empréstimo com taxa alta. Quanto se paga ao final de 12 períodos ?
const capitalInicial = 1000;
const taxa = 0.10;
const tempoMax = 12;
  1. Tempo longo. Mesmo com juros simples, o tempo pode tornar uma dívida pesada ?
const capitalInicial = 1000;
const taxa = 0.05;
const tempoMax = 60;
  1. Comparação de capitais. Compare o capitalInicial acima com um de 5000. O capital inicial muda a forma do gráfico ou apenas sua escala ?

O código usa uma estrutura muito comum em simulações matemáticas. Ele define valores iniciais, cria listas vazias, calcula resultados em um laço, e envia os dados para o gráfico. Essa mesma estrutura pode ser reutilizada em muitos outros modelos, como crescimento populacional, movimento uniforme, depreciação, consumo de energia e comparação de investimentos, por exemplo.


FAZENDO APARECER

Na vida real, muitos contratos financeiros não usam juros simples por longos períodos. Isso acontece porque bancos, financiamentos, cartões e aplicações geralmente usam juros compostos, nos quais os juros passam a gerar novos juros. Por isso, o primeiro script funciona para apresentar o caso mais simples, linear e previsível. Depois dele, fica mais fácil perceber por que os juros compostos podem crescer muito mais rapidamente.

E também porque pequenas quantidades em dívidas ou investimentos crescem enormemente ao longo do tempo. Enquanto o juro simples se aproxima de uma ideia linear, o juro composto se aproxima de uma ideia exponencial. Essa é uma forma de ver a matemática financeira como uma aplicação direta de padrões de crescimento estudados em álgebra e funções.

O aplicativo de JSPlotly a seguir trata exatamente disso, os juros compostos. No juro composto, cada novo período incorpora os aumentos anteriores, produzindo o conhecido “juros sobre juros”.

Figura 4.3: Enquanto os juros simples caminham sobre o dinheiro, os juros compostos aprendem a voar. Clique neste LINK para abrir em nova aba.

Agite antes de usar

Execute o script original e observe as duas curvas. Depois altere os valores:

const C = 1000;
const i = 0.10;
const nMax = 20;

Teste diferentes taxas e tempos. Experimente taxas pequenas e altas, bem como tempos curtos e longos. E observe em que momento a curva composta começa a “disparar”. Nos juros simples, o crescimento acontece sempre pela mesma quantidade, como está na Equação 4.3. Já nos juros compostos, os juros são incorporados ao capital a cada período, e a fórmula passa a ser:

\[ M = C(1+i)^t \tag{4.4}\]

Agora o crescimento deixa de ser linear e passa a ser exponencial. A diferença parece pequena no início, mas aumenta dramaticamente com o tempo. E isso pode ser demonstrado pelo trecho do script que calcula simultaneamente os dois modelos financeiros. Veja abaixo que os modelos mostram que o crescimento acumulativo muda completamente o comportamento do sistema.

let Ms = C * (1 + i * n);
let Mc = C * Math.pow(1 + i, n);

No trecho de código acima, Ms representa o montante em juros simples e Mc o montante em juros compostos. A função de JavaScript Math.pow() calcula potências. Os resultados são armazenados em listas e enviados ao gráfico, permitindo comparar visualmente a reta linear com a curva exponencial. Assim, a lógica geral é calcular juros simples e compostos para cada instante de tempo, guardar os resultados, e desenhar ambas as curvas.

Alguns cenários para você explorar o código.

  1. Taxa pequena. Crescimentos exponenciais ainda aparecem com taxas pequenas ?
const i = 0.02;
  1. Tempo curto. Por que juros simples e compostos parecem quase iguais no início ?
const nMax = 5;
  1. Longo prazo. Por que investimentos de longo prazo favorecem juros compostos ?
const nMax = 50;
  1. Dívida explosiva. O que acontece quando taxas altas se acumulam por muito tempo ?
const i = 0.25;
  1. Comparação de capitais. Rode o trecho abaixo e depois altere a constante para 10000. O capital inicial altera apenas a escala ou também altera o comportamento matemático ?
const C = 500;

Na mundo real, quase todos os sistemas financeiros modernos utilizam juros compostos, como financiamentos, cartões de crédito, investimentos, empréstimos e aplicações bancárias. Por isso, compreender crescimento exponencial é uma forma de interpretar decisões financeiras reais. Isso porque o tempo pode ser um aliado poderoso em investimentos, tanto quanto um inimigo perigoso em dívidas.

VOLTA PRO MUNDO

Agora vem o impacto real ! Juros compostos fazem parte do nosso cotidiano toda a vez que existem parcelas e/ou tempo envolvidos. É assim com o cartão de crédito, onde os juros compostos jogam contra você, bem como com investimentos, quando os juros compostos conspiram a seu favor. O tempo também pode virar um aliado ou vilão, como nos financiamentos e na inflação.

No mundo real, quase ninguém vive apenas com um capital parado. Em geral, há entradas sucessivas, parcelas, depósitos periódicos, reajustes, perdas inflacionárias e decisões tomadas sob incerteza. E é aí que a modelagem fica mais interessante. Que tal experimentar o script de JSPlotly na sequência, e que simula aportes, inflação e valor real ?

Figura 4.4: Juros, aportes e inflação: quando o valor nominal não conta a história toda. Clique neste LINK para abrir em nova aba.

Agite antes de usar

Nem todo crescimento de valor significa ganho real. Se o dinheiro aumenta, mas os preços também aumentam, parte desse ganho pode desaparecer. É aí que entra a inflação.

O app acima busca aproximar a matemática financeira do mundo real, apresentando o efeito dos juros e dos aportes ou acréscimos, bem como a diferença entre valor nominal e valor real. Assim, é possível verificar quanto do crescimento observado representa um aumento verdadeiro de poder de compra.

Execute o script com os valores originais abaixo.

const modo = "investimento";
const capitalInicial = 1000;
const aportePeriodo = 100;
const taxaJuros = 0.01;
const taxaInflacao = 0.004;
const periodos = 60;

Observe as quatro curvas resultantes para saldo (sem e com aportes), valor real, e total acumulado de entradas. Depois, altere a taxa de juros, a inflação e o valor dos aportes. Veja principalmente quando o valor nominal cresce bastante, mas o valor real cresce pouco.

Em matemática financeira, é comum olhar apenas para o valor nominal. Mas o valor nominal mostra apenas a quantidade de dinheiro registrada. Já o valor real tenta responder o quanto esse dinheiro realmente vale em termos de poder de compra. No script, o valor real é calculado por um modelo simplista:

\[ \text{valor real} = \frac{\text{valor nominal}}{(1+\text{inflação})^t} \]

Essa divisão desconta o efeito acumulado da inflação, permitindo perceber que ganhar dinheiro e ganhar poder de compra não são exatamente a mesma coisa.

O código acompanha a evolução do saldo ao longo do tempo. A cada período, o saldo cresce pelos juros:

saldoComAporte = saldoComAporte * (1 + taxaJuros) + aportePeriodo;

Depois, o script calcula o valor real:

let real = saldoComAporte / Math.pow(1 + taxaInflacao, n);

E a função Math.pow() calcula o efeito acumulado da inflação ao longo dos períodos. Com isso, o gráfico mostra que o valor nominal pode subir, enquanto o valor real cresce menos, ou até perde força. E você fica sabendo se o gráfico mostra crescimento verdadeiro ou apenas crescimento aparente. Um breve tutorial para uso do app é dado abaixo.

  1. Rode o script no modo investimento;
  2. Observe a diferença entre saldo com aportes e saldo sem aportes;
  3. Compare o saldo com aportes com o total acumulado de entradas;
  4. Veja se os juros realmente geraram ganho acima do que foi depositado;
  5. Observe a curva de valor real;
  6. Aumente a inflação;
  7. Veja como o valor real se distancia do valor nominal;
  8. Aumente os aportes;
  9. Observe como pequenos depósitos recorrentes podem alterar muito o resultado final;
  10. Troque o modo para divida e interprete o aportePeriodo como novos acréscimos à dívida.

A lógica do script é definir capital inicial, juros, inflação e aportes para cada período, atualizar saldo sem e com aporte, somar o total aportado, corrigir o saldo pela inflação, e desenhar as curvas no gráfico.

Seguem alguns cenários econômicos para você “brincar” sem ferir o bolso (ou a Bolsa!).

  1. Investimento conservador. O rendimento supera a inflação com folga ou apenas mantém parte do poder de compra ?
const taxaJuros = 0.006;
const taxaInflacao = 0.004;
  1. Inflação alta. É possível o dinheiro nominal crescer e, mesmo assim, perder valor real ?
const taxaJuros = 0.01;
const taxaInflacao = 0.012;
  1. Pequenos aportes constantes. O tempo torna pequenos aportes relevantes?
const aportePeriodo = 50;
const periodos = 120;
  1. Aportes maiores. O resultado final depende mais da taxa, do tempo ou da disciplina de aportar ?
const aportePeriodo = 300;
  1. Dívida com novos acréscimos. O que acontece quando uma dívida recebe juros e ainda acumula novos gastos ?
const modo = "divida";
const capitalInicial = 1000;
const aportePeriodo = 100;
const taxaJuros = 0.03;
const taxaInflacao = 0.004;

Fica claro, portanto, ou deveria ficar, que o valor financeiro é mais uma interpretação que uma quantidade alta ou baixa de dinheiro. Um saldo ou dívida de R$ 10.000 hoje não significa a mesma coisa que R$ 10.000 daqui a muitos anos. Na vida real, investimentos, salários, dívidas, financiamentos e aposentadorias são afetados pela inflação. E isso decide junto ao saldo bancário quanto dinheiro você terá no futuro, e quanto desse dinheiro conseguirá comprar.

Por isso, decisões financeiras precisam considerar tempo, taxa de juros, inflação, frequência dos aportes, objetivo da decisão, e a diferença entre ganho nominal e ganho real. Nesse sentido, a matemática financeira serve para ajudar você a tomar melhores decisões.


E SE…

Acho que pra essa seção a gente precisaria de um consultor financeiro. Mas, na ausência de um, tente responder às questões apresentadas separadamente nos scripts do capítulo

Script 1.
  • E se a taxa fosse zero ?
  • E se a taxa fosse negativa, representando perda de valor ?
  • E se duas pessoas investissem o mesmo valor, mas por tempos diferentes ?
  • E se o dinheiro crescesse não em linha reta, mas em curva ?
Script 2.
  • E se houvesse depósitos mensais além do rendimento ?
  • E se a inflação reduzisse o valor real do dinheiro ?
  • E se o rendimento variasse ao longo do tempo ?
  • E se duas aplicações tivessem a mesma taxa, mas aportes diferentes ?
  • E se o crescimento financeiro fosse comparado ao crescimento populacional ou biológico ?
Script 3.
  • E se os aportes aumentassem com o tempo ?
  • E se a inflação variasse a cada período ?
  • E se a taxa de juros fosse menor que a inflação ?
  • E se você comparasse investimento, poupança, financiamento e dívida no mesmo gráfico ?
  • E se uma decisão aparentemente pequena, repetida por muitos períodos, mudasse completamente o futuro ?

MESMO PADRÃO, OUTROS MUNDOS

O modelo de juros simples ajuda a entender qualquer situação em que uma grandeza cresce sempre pela mesma quantidade. Por isso, essa lógica matemática vai além do dinheiro. Ela também representa cenários como a distância percorrida com velocidade constante, a produção diária de um bem, uma economia mensal fixa, o desgaste de um equipamento ou o aumento regular de uma dívida. A ideia por detrás permanece: todo o crescimento constante produz uma reta.

Para juros compostos no mundo real, basta associar sua formulação a contextos em que ocorre crescimento exponencial. Alguns exemplos são o crescimento populacional, epidemias, proliferação bacteriana, reações químicas, propagação de informação por redes sociais (e fake news), e evolução tecnológica, entre muitos.

Também é importante desdobrar os frutos desse capítulo dentro do mesmo mundo da Economia e de seu ramo de Finanças, para saber decidir da melhor forma sobre o futuro do seu dinheiro. Isso é válido em diversos panoramas, como a comparação entre compra à vista e parcelamento, a simulação de poupança para um objetivo futuro, a análise de empréstimos e financiamentos, e a discussão entre investir cedo ou investir mais tarde. Também é vital para discutir o efeito da inflação sobre salários e preços, para comparação entre guardar dinheiro em casa, aplicar com rendimento baixo ou aplicar com rendimento maior, bem como para ter uma leitura crítica da propaganda de bancos, cartões e financiamentos.

Essas decisões fazem parte do cotidiano de todos nós. E uma parte dessas decisões está intimamente ligada ao destino que damos para nosso dinheiro quando temos o mínimo para investi-lo. Para fechar esse capítulo, que tal um último JSPlotly, para simular exatamente isso, ou seja, diferentes formas de investimento monetário ?

A proposta é que você experimente diferentes formas de investimento em renda fixa (poupança, CDB, títulos públicos, letras de crédito) e em renda variável (fundos imobiliários, carteira de ações, câmbio, e criptomoeda), e verifique como risco, tempo, aportes, inflação e volatilidade podem mudar o resultado.

Figura 4.5: Renda fixa, renda variável e risco: mesmo dinheiro, futuros diferentes. Clique neste LINK para abrir em nova aba.

Nesse último script, os valores são hipotéticos e servem apenas para estudo. O objetivo não é recomendar investimentos, mas auxiliar você a compreender modelos de crescimento, risco e decisão.

Agite antes de usar

Imagine duas pessoas investindo, mas cada qual escolhendo um caminho diferente: poupança, CDB (Certificado de Depósito Bancário, um título de renda fixa emitido por bancos), títulos públicos, letras de crédito (títulos emitidos por bancos para financiar setores específicos), fundos imobiliários (investimento coletivo negociado na Bolsa de Valores), ações (pequenas frações do capital social de uma empresa), câmbio (operação de troca de uma moeda por outra) ou criptomoedas (moedas digitais descentralizadas para transações com segurança e criptografia).

Depois de muitos períodos, os resultados podem ser muito diferentes. E aí permanece a dúvida em saber qual/se o maior resultado final significa a melhor decisão ! Decisões financeiras envolvem retorno, risco, tempo, inflação e comportamento.

Execute o script com os valores originais, e depois altere os perfis para conservador ou agressivo. Observe como o aumento do risco muda a trajetória das curvas.

const capitalInicial = 1000;
const aportePeriodo = 100;
const periodos = 120;
const inflacao = 0.004;
const perfil = "moderado";

Perceba que a questão não é saber qual investimento é o melhor, mas sim como diferentes combinações de risco e retorno produzem futuros diferentes.

No script, a renda fixa foi representada com menor oscilação, enquanto que a renda variável foi representada com maior oscilação. Isso permite visualizar diversas coisas. O modelo mostra, por exemplo, que o retorno esperado não é garantia e que o risco significa incerteza. Também permite enxergar que a volatilidade produz subidas e quedas, que a inflação reduz o poder de compra e que o tempo aumenta o efeito das decisões repetidas.

No código, cada investimento possui dois parâmetros principais: o retorno, que representa a tendência média de crescimento, e o vol, que representa a oscilação ao redor dessa tendência (volatilidade). A cada período, o script calcula:

saldo = saldo * (1 + taxaPeriodo) + aportePeriodo;

Assim, o dinheiro cresce pelos juros ou rendimento daquele período e recebe um novo aporte. No fim, o script também calcula o valor real, descontando o efeito acumulado da inflação.

valorReal = valorFinal / Math.pow(1 + inflacao, periodos);

Você pode usar o aplicativo como abaixo:

  1. Rode o script no perfil "moderado";
  2. Observe quais curvas crescem de forma mais regular;
  3. Observe quais curvas oscilam mais;
  4. Compare renda fixa e renda variável;
  5. Aumente o tempo para 240;
  6. Veja como o longo prazo amplia diferenças;
  7. Aumente a inflação;
  8. Observe como o valor real muda a interpretação;
  9. Troque o perfil para "agressivo";
  10. Veja que maior risco pode gerar maiores ganhos, mas também trajetórias mais instáveis.

Ao final, perceba que você está olhando também o caminho percorrido, e não somente o resultado final. Seguem alguns cenários “econômicos” para você testar.

  1. Perfil conservador. Uma menor oscilação torna a trajetória mais previsível ?
const perfil = "conservador";
  1. Perfil agressivo. Um maior risco sempre melhora o resultado final ?
const perfil = "agressivo";
  1. Longo prazo. O tempo favorece todos os investimentos da mesma forma ?
const periodos = 240;
  1. Inflação mais alta. Quais investimentos parecem bons nominalmente, mas perdem força em valor real ?
const inflacao = 0.01;
  1. Sem aportes. Quanto da evolução vem do rendimento, e quanto vem da disciplina de aportar ?
const aportePeriodo = 0;

O script usa uma simulação com ruído controlado. Isso significa que algumas curvas não crescem de forma perfeitamente lisa. Elas oscilam, como acontece em muitos fenômenos reais. A lógica geral é definir capital, aportes, inflação e perfil de risco para cada investimento. Daí o código define o retorno médio e a volatilidade, simula período por período, aplica o rendimento, adiciona o aporte, corrige o valor final pela inflação, ordena os resultados por valor real, e finalmente desenha as curvas.

Na mundo real, ninguém conhece exatamente o futuro. Por isso, a matemática financeira não elimina a incerteza mas ajuda a fazer perguntas melhores. Ao invés de querer saber quanto se vai ganhar, pode-se abrir o leque de perguntas para o quanto se pode perder no caminho ou o quanto a inflação pode corroer. E também o quanto depende dos aportes, quanto depende do tempo, e quanto depende do risco assumido. Esse é um jeito de pensar a matemática financeira como cidadania financeira.


POR DENTRO DA FERRAMENTA

Ao longo desta obra, essa seção tem sido dedicada a espelhar o pensamento computacional e a lógica de programação junto aos diversos scripts de JSPlotly, finalizando com um pseudocódigo voltado a um desses scripts em cada capítulo.

Nesse capítulo sobre Matemática Financeira, por exemplo, você observou os conceitos de juros simples no Script no. 1 e de juros compostos no Script no. 2. Aprendeu como a inflação e aportes financeiros podem ajustar valores no mundo real com o Script no. 3, e mesmo como comparar as diversas opções do mercado de investimentos no Script no. 4.

Mas você já deve ter percebido também que, ao longos dos capítulos do livro, aquelas competências digitais passaram a integrar paulatinamente o próprio capítulo, diminuindo a necessidade de sua exclusividade para o tópico que se apresenta. A partir de agora, então, essa seção irá dedicar-se à verdadeira ferramenta por detrás de todos os scripts que podem ser feitos com o JSPlotly: a linguagem de programaçãoJavaScript.

O entendimento de como opera essa ferramenta permitirá que você compreenda e modifique qualquer código deste livro, ajustando-o às suas preferências ou necessidades, bem como crie outros tantos que desejar. Além disso, poderá entender também o que há por detrás das páginas de internet e criar as suas próprias, como blogs e sites. Isso porque o JavaScript opera silenciosamente quando você clica num botão da tela de seu celular, preenche um formulário ou acompanha uma animação gráfica na internet.

Por óbvio, entretanto, esta “nanométrica” seção não lhe dará condições de sair por aí programando em JavaScript. Mas lhe dará munição básica para que você avance ao próximo nível nessa linguagem, bem como em qualquer outra linguagem de programação que desejar, como Python, Go ou C++. Isso porque o fluxo lógico e os componentes estruturais de qualquer linguagem de programação seguem o mesmo padrão universal.

JavaScript (JS), é uma linguagem de programação moderna, utilizada por grandes empresas e big techs, e focada na interatividade entre a página web e o usuário. Diferente de outras linguagens, JavaScript não precisa ser compilada separadamente por um programa, pois é interpretada a partir de máquinas homônimas presentes em navegadores comuns (browser), como Firefox, Chrome, Safari, Opera, Edge, etc.

Assim, Javacript (JS) é uma linguagem para web. Ela completa a tríade essencial, HTML-CSS-JS. Enquanto HTML preocupa-se com o conteúdo e CSS com o estilo, JavaScript ocupa-se do comportamento, ou seja, da interatividade do usuário frente à uma página web. Vamos então chamá-la agora carinhosamente por JS, somente.

Como ocorre com outras linguagens de programação, a linguagem JS possui bibliotecas, que são módulos independentes de códigos para cumprir certas funções. Nesse sentido, JS cumpre metade do nome do JSPlotly. A outra metade vem da principal biblioteca que é utilizada por esse para a construção de gráficos, mapas, e alguns outros objetos interativos, Plotly.js.

4.1 Estrutura de JS

Uma linguagem de programação normalmente possui características estruturais comuns. Isso quer dizer que há comandos para declarar uma variável e seu tipo, a entrada e saída de dados (resultados), a criação e uso de funções, e cálculos aritméticos, por exemplo. E tal como outras linguagens de programação, JS opera com uma lógica similar de declarações (palavras-chave, operadores, valores, expressões). Em resumo, a gente dizer as declarações de JS compõem:

1. Palavras-chave: sintaxe da linguagem JS;
2. Operadores: caracteres que realizam operações;
3. Valores: texto, números, verdadeiro/falso (variável "booleana"), "não definido", "nulo";
4. Expressões: trechos de código que produzem um único valor.

Do ponto de vista estrutural, por conseguinte, JS possui características que também são comuns a outras linguagens de programação:

1. Saída de dados;
2. Declaração de variáveis; 
3. Tipos de dados;
4. Constantes;
5. Aritmética;
6. Vetores;
7. Funções;
8. Geração de dados aleatórios;
9. Objetos;
10. Operadores;
11. Estruturas de controle;