Fractais de Sierpinski

Fractais são estruturas autosimilares e repetidas em escalas menores. A partir de regras simples, é possível fazer desenhos extremamente complexos.

É possível fazer fractais só com triângulos e retângulos, no VBA.

Para criar um retângulo no VBA, basta um código como o seguinte, definindo a posição (x,y), a largura e altura do retângulo.

ActiveSheet.Shapes.AddShape(msoShapeRectangle, x, y, largura, altura)

O fractal começa com um quadrado maior. Imagine dividir o quadrado em 9 quadrados menores. O do meio, é só traçar o contorno, e os demais, jogamos de novo na recursão.

A segunda rodada fica assim. Para cada sub-quadrado, aplicar a mesma regra numa escala menor.

A terceira rodada de iteração fica assim.

Podemos continuar até o computador aguentar (o número de elementos cresce exponencialmente).

Vide versão Excel VBA, com código aberto para quem quiser estudar. É necessário ativar macros para rodar. Código e planilha no Github. https://github.com/asgunzi/Sierpinski

O Excel não é muito bom em elementos gráficos. A biblioteca D3 do Javascript performa melhor.

Versão Javascript – D3 em:

https://asgunzi.github.io/Sierpinski/Sierpinski.html

e também em:

https://asgunzi.github.io/Sierpinski/SierpinskiQuadrado.html

Veja também:

Ideias em gráficos – equipe de vendedores, expectativa x realidade

Um vendedor excelente < Uma equipe de bons vendedores.

Expectativa x Realidade

PDCAs

Tartaruga x Coelho

1% melhor ao dia x 1% pior ao dia

Planilha para download em:

https://1drv.ms/x/s!Aumr1P3FaK7joC_ZOQ5LczHBI8AF

Veja também:

Ver o post original

Gráficos e Reflexões – Pequena vantagem, milha extra e políticos

Seguem algumas representações gráficas de ideias diversas.

O gráfico a seguir é baseado numa frase de Napoleon Hill, “O mundo recompensa quem está disposto a percorrer uma milha a mais”.

Sobre energia x dia da semana:

Sobre Políticos x Analistas

Veja também:

Ver o post original

Como desenhar organogramas no Excel

O Excel tem uma ferramenta bastante útil para desenho de organogramas.

Basta ir em Inserir -> SmartArt.

No popup que surgir, escolher Hierarquia. Há diversos tipos de organograma a escolher. A título de exercício, vamos no primeiro.

Na caixa à esquerda, podemos preencher as caixinhas com as posições que queremos, e via Enter e TAB, posicionar exatamente a hierarquia desejada.

Vide o exemplo para download.

Veja também:

Ocultar e Reexibir no Excel

Um princípio para um bom design é o de reduzir. Reduzir fisicamente o tamanho, esconder (como um menu no computador que se recolhe quando não utilizado), agregar mais valor à mesma funcionalidade (ex. ao invés de ter dois botões para dois processos subsequentes, unificar no mesmo).

No Excel, é muito fácil Ocultar / Reexibir linhas e colunas, e também abas das planilhas.

Para ocultar uma coluna toda, basta selecionar a coluna (ou a linha), clicar com o botão direito do mouse e escolher “Ocultar”.

Para reexibir, selecionar as colunas quem contém a coluna oculta, clicar com o botão direito, e “Reexibir”.

Para ocultar uma aba inteira, clicar com o botão direito no nome da aba, e selecionar “Ocultar”.

Para reexibir, clicar com o botão direito do mouse em qualquer nome de aba aberto, e escolher “Re-exibir”.

“Simplicidade é sobre retirar o óbvio e adicionar o que faz sentido” – John Maeda

Veja também:

https://medium.theuxblog.com/the-laws-of-simplicity-ed6fa92c7bc6

Alinhar shapes

Montando apresentações, ou no Excel mesmo, é muito útil saber alinhar corretamente os elementos do ppt.

Digamos que eu tenha os seguintes elementos a alinhar.

O comando para alinhar é Formatar -> Alinhar.

No caso, foi feito alinhamento pela parte superior, mas há várias opções para alinhar: pelo meio, pela parte inferior.

A seguir, ir em Formatar -> Alinhar-> Distribuir horizontalmente.

E aí, teremos os shapes perfeitamente alinhados e distribuídos.

Para a figura abaixo, o método foi alinhar à esquerda e distribuir verticalmente.

Dessa forma, teremos figuras alinhadas para a apresentação!

Padrões em círculos

É possível criar padrões extremamente intrincados, a partir de construções simples.

No VBA, é possível desenhar um círculo com o seguinte comando.

    ActiveSheet.Shapes.AddShape(msoShapeOval, 25, 25, 15, 15)

(parâmetros: posição x e y, tamanho na direção x e tamanho na direção y)

Para trocar cores da borda, preenchimento do círculo, etc, normalmente uso o “gravar macro” e reaproveito o código.

Utilizando apenas círculos com raios pequenos, é possível criar uma malha formada de pontos.

(Versão em Excel (https://1drv.ms/x/s!Aumr1P3FaK7joCmnhqOUkgQfqrwW), e versão JS D3 em: https://asgunzi.github.io/Padr-es-em-C-rculos/PadroesCirculos.html)

https://ideiasesquecidas.files.wordpress.com/2022/05/circulos01.png?w=1024

Se o raio de cada ponto for aumentado, e com o raio vermelho levemente maior que o azul.

Começa a ficar interessante quando os raios aumentam a ponto de se tangenciar.

https://ideiasesquecidas.files.wordpress.com/2022/05/circulos03.png?w=1024

Aumentando mais ainda.

https://ideiasesquecidas.files.wordpress.com/2022/05/circulos04.png?w=1024

E assim sucessivamente:

https://ideiasesquecidas.files.wordpress.com/2022/05/circulos05.png?w=1024

Padrões diversos formados aumentando mais ainda os raios:

https://ideiasesquecidas.files.wordpress.com/2022/05/circulos06.png?w=1024

https://ideiasesquecidas.files.wordpress.com/2022/05/circulos07.png?w=1024

https://ideiasesquecidas.files.wordpress.com/2022/05/circulos08.png?w=1024

São desenhos de alta complexidade, feitos a partir de um padrão simples de círculos.

https://ideiasesquecidas.files.wordpress.com/2022/05/circulos09.png?w=1024

Vide planilha, para criar estes e outros padrões.

É necessário ativar macros para funcionar.

Veja também:

https://ideiasesquecidas.com/

Gráfico animado no Excel

É possível criar um efeito de animação, num gráfico de Excel, usando VBA.

O truque aqui é deixar o gráfico final criado, apagar os dados, e via VBA, colar cada número separadamente. Um problema possível pode ser atualizar rápido demais. A fim de dar tempo para atualizar, utilizar application.screenupdating = true, para cada iteração, ou mandar um comando doevents.

Efeito final:

Vide planilha em https://1drv.ms/x/s!Aumr1P3FaK7joCe9r2N_wg8nGIeT

Ideias técnicas com uma pitada de filosofia
https://ideiasesquecidas.com/

Veja também:

Como mentir com gráficos

Gráficos são uma forma importante de representar informação. Só que os dados nunca são só dados, sempre há uma narrativa que pode ou não ser reforçada.

Cinco dicas de “como mentir com gráficos” – ou melhor, como evitar ser enganado por números.

Os dados são os mesmos, só muda a forma de apresentar.

Para qualquer dos casos, o analista deve ter domínio do que está fazendo.

Outro fator importante é a transparência: disponibilizar as bases e critérios, a fim de que os mesmos possam ser auditados por parceiros.

Recomendações de livros interessantes:

Preparados para o risco – Gerd Gigerenzer. É um nos ensina a questionar os números, e com isso, tomarmos boas decisões.

https://amzn.to/3LrVrsU

Storytelling com dados: Como transmitir sua mensagem com dados.

https://amzn.to/3lu3jiZ

Ver o post original

Como inserir cálculos na tabela dinâmica?

Dominar Tabelas Dinâmicas em Excel é uma habilidade extremamente útil.

Além das funcionalidades comuns, é possível fazer cálculos mais elaborados numa tabela dinâmica.

Primeiro, uma parte mais básica.

Dada uma tabela como a seguinte, selecionar a tabela -> Inserir tabela dinâmica. Há algumas opções a preencher, como o local a inserir a tabela dinâmica.

Podemos escolher os campos que irão nas linhas, nas colunas, e por default os valores são somados.

Um primeiro truque: é possível mudar a agregação para média, desvio padrão, máximo, etc. Clicar na seta relativa ao campo desejado e em “Configurações do campo de valor”, para uma lista de alternativas.

Exemplo: fazer a média do primeiro valor, e pegar o máximo do segundo.

Será que é possível fazer cálculos?

Por exemplo, quero fazer uma média ponderada 0,8*valor1 + 0,2*valor2. Uma forma é fazer na planilha, como uma coluna a mais. Outra forma é fazer direto na tabela dinâmica – a vantagem é não poluir ou manipular demais a informação inicial, e assim evitar erros.

Para fazer cálculos direto na tabela dinâmica:

Selecionar a tabela dinâmica e ir em “Analisar” -> “Campos, itens e conjuntos” -> “Campo calculado”

Escrever a fórmula, com apoio dos campos da tabela.

O campo calculado é como se fosse uma coluna nova na tabela original, e vai estar sujeito à mesma agregação e regras de uma tabela dinâmica comum.

Ideias técnicas com uma pitada de filosofia
https://ideiasesquecidas.com/