1. Escolha um tema;
2. Clique no gráfico correspondente;
3. Clique em "Add Plot";
4. Use o mouse para interatividade e/ou edite o código.
: o editor usa desfazer/refazer infinitos no código (Ctrl+Z / Shift+Ctrl+Z) ! Lembrete
JSPlotly e GSPlotly na Escola
Instruções
1 Matemática
1.1 - Trigonometria (EM13MAT306, EM13MAT308, EM13MAT307)
Equação:
1. Função seno:
\[ y = \sin(\omega x) \]
2. Função cosseno:
\[ y = \cos(\omega x) \]
3. Função tangente:
\[
y = \tan(\omega x)
\]
Sugestão:
1. Selecione, alternativamente, a função seno, cosseno, e tangente, utilizando-se o "menu suspenso";
2. Experimente o efeito de se alterar a frequência da função na barra deslizante ("slider");
3. Sobreponha um gráfico de seno e um de cosseno para observar suas diferenças;
4. Repita o mesmo para o gráfico de tangente.
1.2 - Uso de seletor e botões em flutuação de dados (EF07MA21, EF07GE04, EM13MAT301, EM13CHS104, EM13CNT103)
Sugestão:
1. Arraste os marcos de extremidade do gráfico para visualizar um limite mais restrito;
2. Clique nos botões com períodos distintos;
2. Pode-se alterar o ruido aleatório em torno da equação matemática que define a flutuação acima bastando-se modificar a linha de código em: "const valores = dias.map((_, i) => 50 + 10 * Math.sin(i / 10) + Math.random() * 50);" - altere "50" para "5".
1.3 - Animação simulada para uma função (EF07MA20, EF09MA20, EM13MAT302, EM13MAT304)
Obs: Esse objeto didático tem um truque…na verdade, dois ! Após clicar em add, é necessário deslizar o slider primeiro para visualizar o gráfico. E para visualizar uma animação para outra equação, é necessário atualizar a página, como orientado na margem inferior da tela gráfica.
Sugestão:
1. Deslize o controle para evidenciar a animação manual;
2. Experimente substituir a equação modelo por outra, e arraste o controle deslizante para observar o efeito;
3. Altere alguns parâmetros para a animação, por exemplo, aumentando os níveis de "frames" (slider.max = "50"; slider.value = 1);
4. Recarregue a página e mude a função matemática; ex: "let f = x => Math.sin(x);"
1.4 - Animação simulada com múltiplos deslizadores
1. Arraste qualquer slider, e observe a tendência apresentada, bem como a mudança nos parâmetros da equação no topo;
2. Como no exemplo anterior, é possível alterar a função matemática no código, bem como os parâmetros para um novo slider. Teste isso alterando a função " y_values = x_values.map(x => a * x * x + b * x + c);
" para " y_values = x_values.map(x => Math.sin(a * x * x + b * x + c));"
1.5 - Composição fractal (EM13MAT301, EM13MAT305, EM13MAT401, EM13ARM502, EF09MA10)
Equação
\[ z_{n+1}=z_{n}^{2}+c \]
Onde:
z ∈ C: geralmente inicializado como o ponto do plano complexo;
c ∈ C: fixo para cada conjunto de Julia.
Sugestão
1. Experimente alterar os componentes Real e Imaginário da fórmula, para obter padrões artísticos distintos. Seguem sugestões:
= 0 + 0i
c = -0.4 + 0.6i
c = 0.285 + 0i
c = -0.8 + 0.156i
c = 0.45 + 0.1428i c
1.6 Fractal de Mandelbrot
Sugestão
1. Selecione cores e níveis de ampliação distintos ("zoom") nos dois menus, para visualizações distintas;
2. Verifique onde se encontram as equações que definem o perfil de Mandelbrot no código, e tece pequenas alterações para verificar resultados distintos.
2 Matemática Financeira
2.1 - Juros Compostos (EM13MAT402):
Equação:
\[ M = C \cdot (1 + i)^t \]
Onde,
- M: montante final
- C: capital inicial
- i: taxa de juros por período (em decimal)
- t: número de períodos (ex: meses)
Sugestão:
1. Varie o período de contratação, a taxa mensal de juros ou o montante inicial.
2. Experimente combinar os parâmetros na variação.
3. Avalie a diferença visual entre um investimento e um empréstimo, inserido valor positivo de capital inicial para o 1o. e negativo para o 2o.
4. Observe a curva descendente para um empréstimo simulado com capital inicial negativo. Os valores remanescentes referem-se à dívida faltante para quitar o empréstimo.
3 Estatística
3.1 - Curva de distribuição normal (EM13MAT316, EM13MAT407, EM13MAT312)
Equação
\[ f(x) = \frac{1}{\sigma \sqrt{2\pi}} \, e^{ -\frac{(x - \mu)^2}{2\sigma^2} } \]
Onde:
- \(\mu\) = 0 (média da distribuição);
- \(\sigma\) = 1 (desvio padrão);
- x = variável aleatória contínua; f = função de densidade da distribuição normal
\[ z = \frac{x - \mu}{\sigma} \]
Sugestão:
1. Experimente alterar o valor de "p" e rodar o gráfico. Esse valor representa a probabilidade de se observar, sob a hipótese nula, um valor tão extremo ou mais extremo do que o observado — ou seja, mede a evidência contra a hipótese nula. No gráfico, representa a área sob a curva normal nas regiões críticas, indicando a chance de ocorrência do resultado observado por puro acaso.
3.2 - Animação de um histograma (EF09MA21, EM13MAT406, EM13MAT407)
Sugestão:
1. Observe no topo do script as diversas constantes passíveis de alteração para uma animação distinta, e experimente alterá-las uma a uma para compreender tanto a ação do objeto, como o conteúdo estatístico a que se refere:
= 0 (média);
const mu = 1 (desvio-padrão);
const sigma = 50 (no. de quadros);
const n_frames = 20 (taxa de amostras/quadro); const sample_per_frame
4 Ciências da Computação
4.1 - Treinamento em JavaScript (EF09LP27, EF06MA20, EM13MAT503, EM13LGG701)
Sugestão:
1. Aqui o "céu é o limite" ! Existem inúmeras possibilidades para comandos e funções em JavaScript, bem como para saída conjunta de dados, cálculos e gráficos.
5 Física
5.1 - Altura, harmonia e timbre de sons (EF15AR06, EM13ARH402)
Sugestão:
1. Teste outras tonalidades (C,G,D, etc), observando como se apresenta a onda pura sobrepondo os gráficos;
2. Avalie a diferença entre uma onda pura e aquela produzida com instrumentos musicais, envolvendo harmônicos naturais. Para isso, substitua a opção booleana de "false" para "true" na variável "const ondaComposta".
5.2 - Energia potencial elástica (EM13CNT102,EM13CNT202, EM13MAT402)
Equação
\[ F = -k*x \]
Onde:
- F = força restauradora da mola (N);
- k = constante elástica da mola (N/m);
- x = deformação (m).
\[ E = \frac{1}{2}*k*x^2 \]
Onde:
- E = energia potencial elástica (J).
Sugestão:
1. Experimente alterar o valor da constante elástica da mola para evidenciar seu efeito, relacionando-a com molas mais rígidas ou menos rígidas;
2. Altere os limites de deformação da mola na "estrutura de constrole" do código (ex: "for (let x = -0.7)"), e observe o efeito na energia potencial máxima;
3. Observe que, pela operação quadrática no valor da deformação, a energia potencial é sempre positiva.
5.3 - Movimento de corpos (EM13CNT102):
Equação:
1. Equação geral
\[ y(x) = x \cdot \tan(\theta) - \frac{g}{2 v_0^2 \cos^2(\theta)} \cdot x^2 \]
Onde:
- y(x): altura em função da distância horizontal;
- x: posição horizontal (m);
- \(\theta\): ângulo de lançamento em relação à horizontal (radianos ou graus);
- v0: velocidade inicial do projétil (m/s);
- g: aceleração da gravidade (9,8 m/s²\(^{2}\))
2. Tempo total de vôo:
\[ t_{\text{total}} = \frac{2 v_0 \sin(\theta)}{g} \]
3. Posição Horizontal ao longo do tempo
\[ x(t) = v_0 \cos(\theta) \cdot t \]
Sugestão:
1. Veja que há uma barra deslizante para ângulos iniciais na simulação. Arraste a barra para outro ângulo e adicione o gráfico, comparando o efeito dessa modificação.
2. Altere a velocidade inicial no código, e observe o efeito no gráfico.
3. Simule uma "condição lunar" para a trajetória, e cuja gravidade é em torno de 1/6 a da Terra (~1.6 m/s²).
5.4 - Animação para lançamento oblíquo (EF09CI09, EF09MA20, EM13CNT103, EM13MAT304)
Sugestão:
1. Assim como no tópico anterior, experimente alterar parâmetros da equação, tais como a velocidade inicial e o ângulo de ataque, e observar o efeito dessas mudanças.
5.5 - Animação para movimento de translação em sistema solar - dados aproximados (EF05CI08, EF07CI01, EM13CNT104, EM13CNT103)
Sugestão:
1. Observe que há uma barra deslizadora no topo do objeto; arraste-a para observar velocidades distintas para a animação;
2. Observe que a imagem foi possibilitada por "zoom" no ecrã gráfico, para melhorar a visualização dos planetas. Nesse sentido, experimente utilizar tal recurso durante a animação;
2. Veja que existem 8 planetas na animação, não se inserindo o planeta-anão Plutão. Isso não é por descaso ao próprio, mas porque você pode observar o quão lento é a movimentação dos planetas a medida que se distanciam do Sol (vide Netuno, praticamente estático). Nesse sentido, verifica-se o potencial de uma animação com dados aproximados, trazendo consigo informações adicionais não perceptíveis nos livros-texto sobre o assunto.
5.6 - Animação para movimento harmônico simples (EF09CI09, EF09MA18, EM13CNT104, EM13CNT203)
Equação
\[
x(t)=Acos(ωt+ϕ)
\]
Onde:
- x(t) = A posição da massa no tempo t;
- A = amplitude do movimento, que é a distância máxima da massa a partir da posição de equilíbrio (no caso, x=0);
- \(\omega\) = frequência angular, que define a taxa de oscilação. Ela é calculada por 2\(\pi\)/T, onde T é o período (o tempo para um ciclo completo);
- \(\phi\) = fase inicial ou constante de fase, que define a posição da massa em t=0
Sugestão:
1. Experimente alterar alguns parâmetros da equação de movimento, como a amplitude A e a frequência angular;
2. Aumente a frequência angular da animação reduzindo o denominador em "const w";
2. Experimente o botão "html" e evidencie que a animação é preservada na exportação do arquivo;
3. Experimente o botão "clone" e evidencie que é possível compartilhar o objeto na configuração congelada juntamente ao código modificado
5.7 - Animação para movimento pendular (EF09CI09, EF09MA18, EM13CNT104, EM13CNT203)
Equação
\[ θ(t)=θ_0cos(ωt) \]
\[ x(t)=Lsin(θ) \]
\[ y(t)=−Lcos(θ) \]
\[ ω=\sqrt{\frac{L}{g}} \]
Onde:,
- θ(t) = posição angular;
- x(t) = coordenada x;
- y(t) = coordenada y;
- ω = frequência angular
Sugestão:
1. Como sugerido para outros objetos, experimente a "exploração paramétrica" da equação envolvida no código, alterando seus parâmetros;
2. Observe uma característica vantajosa de simulações sobre experimentos reais: a realização em condições impossíveis na prática. Para isso, experimente a simulação como se estivesse na Lua, com alteração no valor de aceleração da gravidade para 1,62 m/s^2 (mas com ".", e não "," - por tratar-se de sintaxe de programação.
6 Química
6.1 - Bandas de absorção em função de concentração - representação 3D (EF09CI04, EF09MA17, EM13CNT103, EM13MAT305)
Sugestão
1. Experimente alterar o padrão do gráfico e suas cores. Respectivamente: type: 'surface', colorscale: 'Viridis');
2. Altere a faixa de comprimento de onda, separando os picos; para isso, mude as variáveis min/max de lambda: const lambdaMin = 450, lambdaMax = 600;
6.2 - Capacidade Calorífica (EF09CI06, EM13CNT104, EM13CNT203)
Equação:
\[
Q = c \cdot m \cdot \Delta T
\]
Sugestão:
1. Experimente variar inicialmente a temperatura, sobrepondo alguns gráficos;
2. Varie também a massa no editor de códigos, para comparação.
6.3 Mistura de substâncias em reação exotérmica - gráfico 3D (EF09CI02, EM13CNT103, EM13CNT103)
Sugestão:
1. Experimente variar inicialmente a temperatura, sobrepondo alguns gráficos;
2. Varie também a massa no editor de códigos, para comparação.
6.4 - Animação e cinética de reação
Equação:
\[ R(t)=\frac{R_0}{1+k_{efetiva}t} \]
\[ P(t)=R_0−R(t) \]
Onde,
- \(R(t)\) = quantidade de reagente R no instante \(t\) (unidades arbitrárias);
- \(P(t)\) = quantidade de produto P no instante \(t\) (unidades arbitrárias);
- \(R_{0}\) = quantidade inicial de reagente no tempo \(t=0\);
- \(t\) = tempo (em segundos);
- \(k_{\text{cinética}}\) = constante de velocidade de base (em \(s^{-1}\));
- \(k_{\text{efetiva}}\) = constante efetiva após considerar catalisador e/ou inibidor:
\[ k_{\text{efetiva}} \;=\; k_{\text{cinética}} \times \begin{cases} f_{\text{cat}}, & \text{se catalisador ligado}\\[6pt] 1, & \text{se catalisador desligado} \end{cases} \times \begin{cases} \dfrac{1}{f_{\text{inh}}}, & \text{se inibidor ligado}\\[6pt] 1, & \text{se inibidor desligado} \end{cases} \]
Sugestão
1. Experimente alterar a constante "k_cinetica" no topo do código (ex.: 0.008, 0.017, 0.05) e use Play/Reset para comparar;
2. Experimente incluir/retirar inibidor e catalisador;
3. Experimente alterar o potencial dos moduladores acima editando suas constantes:
= 2.0;
a. const fator_catalise = 3.0; b. const fator_inibicao
6.5 - Painel interativo (dashboard) para medidas ambientais - dados simulados (EF07MA21, EF09MA21, EM13MAT406, EM13LGG604)
Sugestão:
1. Ainda que seja um objeto que apenas simula a aquisição de dados, pode-se obter um resultado diferente interferindo-se no código, como:
: "slider.min = "0";slider.max = "24"; slider.step = "1" " ;
a. Alteração dos sliders:
b. Alteração nas equações que definem o comportamento dos mostradores"const tempo = Array.from({ length: 25 }, (_, i) => i); // 0 a 24h
const temperatura = tempo.map(t => 20 + 5 * Math.sin((t - 6) / 3)); // pico 12h
const condutividade = tempo.map(t => 100 + 30 * Math.cos(t / 5)); "
7 Biologia
7.1 - Área de biomas brasileiros (EF05GE05, EF08GE08, EM13CNT301, EM13CNT304)
Sugestão
1. Os dados apresentados são apenas para efeito de simulação. Desejando dados mais robustos, recomenda-se fontes seguras (ex: MapBiomas Brasil - https://brasil.mapbiomas.org/)
2. Este é um gráfico de barras, apenas isso. Se você alterar as informações presentes nas constantes dos 3 primeiros vetores ("const X = [...]"), poderá converter a representação para um tema distinto.
7.2 Diagrama de ciclo da água (EF06CI03, EF06CI04, EM13CNT103, EM13CNT202)
Sugestão:
1. Como para diagramas acima, experimente alterar no código as propriedades das setas e dos termos e campos envolvidos no fluxograma;
2. Substitua termos para a formação de outro fluxograma;
3. Reposicione os objetos na área gráfica (campos, termos, setas) com auxílio do mouse.
7.3 Diagrama de ciclo claro e escuro da fotossíntese (EM13CNT101, EM13CNT103, EM13CNT201, EM13MAT405)
Sugestão
1. Experimente reposicionar as entradas e saídas (ex: Luz, Glicose) por simples arraste de mouse;
2. Substitua os termos dentro dos quadros, ou mude outros aspectos do diagrama (cor, preenchimento, por ex).
7.4 - Modelo de Crescimento Populacional com Fase Lag (EM13CNT102, EF06MA17, EF08CI06, EM13MAT301, EM13CNT201)
Equação:
\[ N(t) = \frac{K}{1 + \left(\frac{K - N_0}{N_0}\right) \cdot e^{-r \cdot A(t) \cdot t}}, \quad \text{com } A(t) = \frac{1}{1 + e^{-k(t - t_0)}} \]
Onde:
- K = capacidade de suporte ambiental;
- N0 = população inicial;
- r = taxa intrínseca de crescimento;
- A(t) = fator de ativação do crescimento com atraso (fase lag);
- t0 = ponto médio de transição entre fase lag e fase log;
- k = constante de suavidade do retardo (fixado como 0.5 no código)
Sugestão:
1. Experimente variar os parâmetros da equação, combinando alguns, e comparando seus efeitos sobre os gráficos:
a. Capacidade de suporte;
b. População inicial;
c. Taxa de crescimento;Retardo (fase lag); d.
7.5 - Eficiência energética e cadeia alimentar (EF06CI02, EM13CNT202, EM13CNT203)
Sugestão
1. A regra de Lindeman, esboçada na referência acima, estabelece uma variação para 5-20% de eficiência energética no ecossistema. Assim, experimente sobrepor as curvas com tais taxas;
2. Se quiser observar a relação logarítmica da transferência de energia, acrescente o comando "type: 'log'," , logo abaixo de "title: 'Energia disponível (unidades)',".
7.6 - Animação para potencial de ação de neurônio (EF08CI08, EF09CI01, EM13CNT202, EM13CNT302)
Sugestão:
1. Experimente alterar os valores padrão para os potenciais apresentados em "function potencial(i)" do código;
2. Valores alterados estão presentes em alguns quadros neurológicos, como epilepsia e esclerose múltipla.
7.7 - Animação de mapa de áreas queimadas por bioma no Brasil - dados fictícios de 1955 a 2024 (EF07CI08, EF08GE08, EM13CHS101, EM13CNT201)
1. É salutar buscar fontes de informação mais precisas sobre os temas tratados, posto que o GSPlotly, como um assistente de IA, não garante a a natureza das informações. No exemplo, sugere-se o "Programa Queimadas - INPE - Terrabrasilis" (https://terrabrasilis.dpi.inpe.br/queimadas/situacao-atual/situacao_atual/);
2. Pode-se inserir dados mais precisos no próprio script, no campo de "const usar_dados_ficticios = true; // mude para false e preencha areaBiomaAno_real()";
3. Pode-se modificar a temática do mapa animado para qualquer outra, bastando-se alterar os dados nas constantes de "Controle Geral" do script.
7.8 - Jogo da Vida de Conway (EF06MA20, EF09MA24, EM13MAT503, EM13CNT201)
Sugestão:
1. Veja no topo do código que é possível alterar-se o tamanho da grade, os passos de tempo, e a probabilidade de uma célula estar viva no modo "Random".
8 Geografia
8.1 Mapa do Brasil e Capitais (EM13CHS101, EM13CHS202, EM13CHS301)
Sugestão:
1. Experimente usar o botão de rolagem do mouse e ícone "pan" da barra superior, para interagir com o mapa.
8.2 Mapa mundi e algumas cidades de grande porte (EF06GE05, EF07GE06, EM13CHS101, EM13MAT502)
1. Experimente alterar o script, inserindo outras cidades com suas respectivas coordenadas geográficas em "const data" (text, long - longitude, lat - latitude)
8.3 Mapa e PIB do Oriente Médio (EF09GE03, EF08GE06, EM13CHS104, EM13CHS201)
Sugestão:
1. Experimente usar o botão de rolagem do mouse;
2. Clique num país para identificar seu nome e produto interno bruto aproximado;;
3. Modique o código para atualizar algum dado, ou para modificar a informação (trocando PIB por outro dado, por ex).
9 História
9.1 - Distribuição de escravizados nas Américas no período de 1500–1888 (EF08HI06, EM13CHS104, EM13CHS503):
Sugestão:
1. Experimente alterar entre os períodos no menu suspenso, comparando as estimativas de tráfico escravo;
2. Selecione um período, crie o gráfico, selecione outro período, e adicione outro gráfico. Isso permite comparar o quantitativo de escravos aportados pelas barras duplas formadas, e passagem do mouse sobre cada barra.
9.2 - Linha do tempo de eventos da Idade Média (EM13CHS101, EM13CHS102)
Fonte: Encyclopedia.com
Sugestão:
1. Experimente alterar no código eventos e períodos, e destinados a outro período da História humana.
9.3 - Alterações cartográficas percebidas ao longo do tempo (EF08GE09, EF07GE05, EM13CHS102, EM13CHS104)
Sugestão:
1. Pode-se alterar a formatação do mapa no código para cores ("lakecolor"), posição do menu ("updatemenus"), duração da transição entre frames ("transition"), entre outros;
2. Esse exemplo é genérico; altere as constantes em "paises", "anos", e "valores", e obtenha um novo mapa para um tema específico.
9.4 - Linha do tempo de eventos da Idade Média (EM13CHS101, EM13CHS102)
Fonte: Encyclopedia.com
Sugestão:
1. Experimente alterar no código eventos e períodos, e destinados a outro período da História humana.
10 Linguagens
10.1 - Gírias faladas no Brasil de 1980-2020 (EF89LP19, EM13LGG102)
1. Pode-se usar a passagem de mouse para observar o "tip" (dica) apresentada para cada dado no gráfico.
10.2 - Frequência de palavras em texto (EM13LGG101, EM13LGG302, EM13LGG303)
Sugestão
1. Experimente substituir o texto do código por outro;
2. Experimente variar o quantitativo de termos mais frequentes na variável "const entradas" (opcionalmente, varie também no título do gráfico, para fazer sentido);
3. Compare um texto em português com sua tradução para inglês ou outra língua.
10.3 - Obras lieterárias e movimentos estéticos (EF89LP47, EM13LP01, EM13LP02, EM13LGG201)
Sugestão
1. Arraste os marcadores extremos para ampliar o foco em um período específico da lieratura;
2. Altere o script acrescentando outras obras-chave em "const obras =" e "const periodos ="
11 Arte
11.1 - Criação de objetos 3D (EF09MA16, EF15AR06, EM13MAT405, EM13LGG604)
1. Experimente alterar alguns valores no script, testando o resultado. Por exemplo, crie uma tapete (ou melancia achatada) alterando o código em: "const zVal = L * (t - 0.5)"...para "const zVal = L * (t - 20.5);"
11.2 - Editor de notação musical (EF15AR06, EF69AR22, EM13ARH402)
1. Experimente alterar a sequência melódica do código no vetor correspondente;
2. Experimente alterar as figuras de duração no vetor correspondente
11.3 - Espirógrafo animado (EF07MA18, EF09MA20, EM13MAT406, EM13LGG701s)
Sugestão:
1. O objeto permite alterar o tipo de hipo ou hipertrocoide por menu, assim como pausar a animação por botão;
2. É possível alterar o padrão trocoide das figuras modificando-se uma relação matemática. Exemplificando, procure no código pela linha "Math.cos(t) + d*Math.cos(k1*t);", e altere o segundo termo para "Math.sin"
11.4 - Aplicativo: prancha de desenho (EF15AR06, EF09AR07, EM13LGG604, EM13LGG606)
Sugestão
1. Explore o script. Apesar de simples, ele permite selecionar cores distintas, espessuras de canetas, e formas geométricas;
2. Como os demais objetos elaborados no JSPlotly, o desenho da prancha pode ser armazendo conservando sua interatividade pelo botão "html", e mesmo modificado no próprio arquivo salvo ("play.html");
3. Se desejar alterar cores, espessuras, ou quiser acrescentar outras funcionalidades, verifique as variáveis do script;
4. Experimente o botão "clone", que permite clonar a prancha juntamente com seu código.
12 Ensino Religioso
12.1 - Diagrama interativo sobre as 10 últimas encíclicas papais (EF05ER01, EF09ER02, EM13ER04)
Sugestão
1. Para perceber o dinamismo da representação, experimente arrastar qualquer parte do fluxograma, e observe a acomodação das demais;
2. Como dantes, pode-se alterar a informação constante no fluxograma, mantendo suas características gráficas e dinâmicas, bastando-se alterar as constantes utilizadas para gerar o objeto ("const = ").
13 STEAM
13.1 - Vaso em torno de olaria (EM13MAT101, EM13MAT403, EM13CNT204, EM13AR01, EM13AR02)
1. Altere a altura do vaso, seu formato, e suas cores, editando o código nos campos específicos.
13.2 - Mini CAD (EM13MAT301, EM13MAT503, EM13MAT402)
1. Experimente alterar os parâmetros base, altura e curvatura do código, variando também o sinal dos valores (positivo, negativo);
2. Altere alguma função trigonométrica (linhaX ou linhaY, seno para tangente, por exemplo), e sobreponha ao plot;
3. Sobreponha figuras geométricas com paleta de cores distintas.
4. Crie figuras simétricas sobrepondo uma curva com parâmetro positivo a uma com mesmo parâmetro negativo.
14 Jogos
- Jogo da Memória (EF06MA19, EF06MA16, EF07MA26, EF09MA19, EM13MAT401, EM13MAT102, EM13MAT403, EM13LGG701)
Instruções para o Jogo de Memória Numérica:
- No campo superior existem duas constantes booleanas true/false, uma para jogar (jogue) e outra para verificar o acerto (verificar), bem como uma semente que fixa um determinado quadro numérico aleatório;
- Inicie o jogo (jogue/false, verificar/false);
- Clique no botão add e será exibido um quadro de pares numéricos para memorização;
- Troque para jogue/true, clique em clean plot, e depois em add. O quadro será exibido agora apenas com um valor (demais células mostratrão “?”);
- Escolha verificar/true, clique em clean plot, e depois em add. Será apresentado um campo para se digitar as coordenadas em que se acredita estar o outro par numérico (Ex: A2);
- Clique em OK, e será apresentado um par formado pelo valor inicial e o valor escolhido, para verificação do acerto.
1. Para jogar novamente alterando os valores do quadro, basta modificar a constante *semente* para um número qualquer;
2. Para variar entre níveis de dificuldade do jogo, basta alterar o número de linhas e de colunas nas constantes respectivas do código.
15 Aplicativo - Lousa Digital
- Pode ser exportada como arquivo autossuficiente HTML em botão da própria lousa, e permitindo compartilhamento da imagem gerada, bem como continuidade de sua edição;
- Faculta a personalização do código que o produz, permitindo inserir/alterar canetas, espessuras, e ações distintas não previstas no código-fonte.
- Escrever com 7 cores e 3 espessuras distintas;
- Acessar 4 planos de fundo de coloração diferente;
- Sobrepor o plano com um grid;
- Utilizar um apagador (erase);
- Utilizar um apontador de laser para localização do que se pretende assinalar;
- Salvar a imagem como PNG, indicando data e hora;
- Salvar a imagem como HTML autossuficiente (obs: botão html do quadro; o do editor não funciona neste objeto);
- Comando de desfazer (undo) e de limpeza (clean) do quadro;
- Possui atalhos de teclado: E=borracha; L=laser; Z desfaz, X limpa, H salva HTML
Sugestão:
1. Pode-se alterar a espessura das canetas em "var baseWidth = 1;" ;
2. Os botões 1x, 2x, 4x são multiplicadores; edite as linhas de criação dos botões pra trocar rótulo/multiplicador (ex.: "addSize('3x', 3, true)").
: o botão funcional para reprodução do quadro é o que está na própria lousa, "html". O botão do editor de códigos não opera para o aplicativo. Obs
16 Musicalização
16.1 - Flauta doce (EF15AR05, EF69AR09, EM13LGG601, EM13LGG604, EM13LGG701)
16.2 Sugestão
1. A flauta foi concebida para tons (círculo) e semitons (semicírculos). Você pode "tocar" a flauta clicando com o botão esquerdo do mouse sobre um orifício ou utilizando o dedo em um smartphone;
2. Você pode acrescentar ou omitir algum orifício na flauta, bastando alterar as duas linhas das variáveis "var naturais" e "var sustenidos";
2. Você pode transformar sua flauta num "pífano", geralmente mais agudo que a flauta doce, e bastante comum da tradição nordestina. Para isso, basta substituir as linhas das variáveis "var naturais" e "var sustenidos", mudando o valor de "5" para "6", como segue (adicione "add" em seguida - ou "clean"/"add"):
= ["C6","D6","E6","F6","G6","A6","B6"];
var naturais = ["C#6","D#6","F6","F#6","G#6","A#6","B6"];
var sustenidos 3. Na linha de raciocício acima, também é possível mudar o padrão da flauta doce, flautas baixas e contra-baixo. Exemplificando, uma flauta germânica (orifício maior, soprano, utilizada nas Escolas e representada no script) ou barroca (orifício menor, tons mais graves).
16.3 - Piano - com pedal de sustain (EF15AR05, EF69AR09, EM13LGG601, EM13LGG604, EM13LGG701)
16.4 Sugestão
1. É um piano pequeno, mas é um piano (2 oitavas) !! E como tal, você pode expressar sua aptidão musical com o instrumento polifônico;
2. Para prolongar o som das teclas eleve a barra de "sustentação";
3. Como parte do JSPlotly, o piano pode ser compartilhado sem o código, somente como instrumento para musicalização ou treino, já que é exportado pelo botão "html", preservando sua interatividade e sonorização por mouse ou toque de dedos num dispostivo móvel;
4. Também como parte do JSPlotly, é possível compartilhar o piano com os códigos para alteração junto ao botão "clone";
17 Acessibilidade e inclusão
17.1 - Gráfico sonoro acessível por teclado (EF69LP27, EF69AR09, EM13MAT406, EM13LGG604, EM13LGG701)
Sugestão:
1. Pode-se editar o código para uma função específica. Para isso, basta mudar a linha "var f = function(x){ ... }". Exemplos:
Math.sin(x*Math.PI/180); (graus);
a. return Math.sin(x); (radianos);
b. return Math.exp(-0.01*x)*Math.cos(0.2*x);
c. return 2. Pode-se alterar a velocidade de deslocamento da função pela função abaixo, e cujo valor é dado em milisegundos:
"var PLAY_INTERVAL_MS = 100; "
18 Games
18.1 - Jogo de Arco e Flecha (EF09CI09, EF09MA18, EM13MAT302, EM13CNT104, EM13LGG701)
Sugestão
1. Altere o ângulo ("let theta_edit = 45") e/ou a velocidade inicial do disparo ("let v0_edit = 20") para ajustar a parábola ao alvo;
2. Perceba que a pontuação é flexível: 5 pontos para proximidade do alvo, e 10 pontos quando o acerta.
18.2 - Game Pong (EF69AR09, EF06MA20, EM13LGG604, EM13LGG701)
Sugestão:
1. Se achar que o jogo está lento, mesmo na velocidade 'warp' máxima, é possível alterar seu valor em "var base = Math.pow(1.5, warp);";
2. Se achar que o jogo tá difícil ou fácil demais, é possível alterar o tamanho da raquete em "paddle = { w: 80, h: 10,...";
3. Se desejar aumentar a área do jogo, modifique na linha abaixo (largura, altura):
"var cv = sk.createCanvas(400, 300).parent('jogoArea');"
19 Interface Experimental
JSPlotly para Arduino e aquisição de dados de condutivimetria (EM13CNT201, EM13CNT308, M13CNT301, M13CNT302)
Exemplo de aplicação de JSPlotly para interfaceamente com Arduino. O gráfico apresenta medidas de condutividade em meio aquoso com medidor TDS para teores crescentes de NaCl (sonda no canto esquerdo). Clique na imagem para obter o aplicativo JSPlotly autônomo para condutividade.
Instruções:
- Para conexão Web Serial é necessário instalação de Python ao computador (Windows ou Linux), e setup de servidor local. Para Windows baixe e instale o arquivo oficial para Python, lembrando-se de clicar em Add Python to PATH, e digite os comandos no CMD dentro da pasta do aplicativo autônomo. Segue a orientação para Linux:
- Conecte o Arduino e componentes (sonda TDS, recipiente com água e sal);
- Copie, cole e rode o script do fabricante para TDS na IDE do Arduino conectado;
- Feche a IDE do Arduíno;
- Abra um Terminal na pasta do aplicativo autônomo do JSPlotly para Arduino (condutiv_JSPlotly.html);
- Digite: python3 -m http.server
- Abra o html autônomo do circuito no Chrome (nunca no Firefox);
Sugestão:
1. Como o aplicativo é escrito no JSPlotly, é possível personalizá-lo para diversas situações, como taxa de tranferência de dados, traços (tipo, cores, espessura), tipo de gráfico, entre outros.