• Nenhum resultado encontrado

Informática para Ciências e Engenharias

N/A
N/A
Protected

Academic year: 2021

Share "Informática para Ciências e Engenharias"

Copied!
7
0
0

Texto

(1)

Inform´

atica para Ciˆencias e Engenharias

Ficha Pr´

atica N

o

6 — 2020/21

1

Gr´

aficos de Pontos, de Linhas, de Imagens e de Barras

Para garantir que os gr´aficos gerados sejam apresentados em janelas de gr´afico independentes proceder da forma: no menu principal ir a Tools → Preferences e escolher a op¸c˜ao IPython console na janela `a esquerda; no painel Graphics ir `a op¸c˜ao Graphics backend e selecionar Automatic.

Exerc´ıcio 1

Recorde a fun¸c˜ao plot do m´odulo matplotlib, que permite tra¸car um gr´afico de pontos ou linhas1.

(a) Execute no interpretador a sequˆencia de instru¸c˜oes indicada abaixo, que gera um gr´afico de pontos das fun¸c˜oes seno e coseno.

import math

import matplotlib.pyplot as plt

# Fun¸c~ao auxiliar. def multpi(x):

return x * math.pi/30

pontosP = [multpi(x) for x in range(61)] senoP = [math.sin(x) for x in pontosP] plt.plot(pontosP, senoP, ’xb’)

cosenoP = [math.cos(x) for x in pontosP] plt.plot(pontosP, cosenoP, ’or’)

(b) Execute no interpretador a sequˆencia de instru¸c˜oes que gera o gr´afico de linhas correspondente ao gr´afico de pontos que desenhou na al´ınea anterior.

1Chama-se a aten¸ao para a vers˜ao que usar do matplotlib. Na mais recente 3.0 o atributo hold foi descontinuado

e os desenhos dos gr´aficos por defini¸c˜ao sobrep˜oem-se na mesma janela, a menos que sejam apagados. Nas vers˜oes anteriores ter´a de usar o atributo hold tal como se encontra na sequˆencia de instru¸c˜oes apresentada.

(2)

0

1

2

3

4

5

6

1.00

0.75

0.50

0.25

0.00

0.25

0.50

0.75

1.00

0

1

2

3

4

5

6

1.00

0.75

0.50

0.25

0.00

0.25

0.50

0.75

1.00

Exerc´ıcio 2

Recorde a instru¸c˜ao imshow do m´odulo matplotlib, a qual permite visualizar graficamente o conte´udo de uma matriz tendo ainda a op¸c˜ao de definir a paleta (mapa) de cores usadas na gera¸c˜ao da imagem.

(a) Execute no interpretador a sequˆencia de instru¸c˜oes indicada abaixo, que ilustra a utiliza¸c˜ao da instru¸c˜ao imshow e defini¸c˜ao da paleta de cores com uma lista de 2 × 2, que ser´a pintada sucessivamente com v´arias cores. O m´odulo matplotlib permite gerar um objecto Colormap a partir de uma lista de cores, atrav´es da classe matplotlib.colors.ListedColormap(lista de cores)

(3)

from matplotlib.colors import ListedColormap plt.imshow([[1, 2] , [3, 3]])

#cores= vermelho, verde, azul e branco.

cores = [[1, 0, 0], [0, 1, 0], [0, 0, 1], [1, 1, 1]] my_cmap = ListedColormap(cores)

plt.figure()

plt.imshow([[1, 1] , [2, 2]], cmap = my_cmap) # cores= preto, preto, preto, azul.

cores = [[0, 0, 0], [0, 0, 0], [0, 0, 0], [0, 0, 1]] my_cmap = ListedColormap(cores)

plt.figure()

plt.imshow([[1, 2] , [3, 4]], cmap = my_cmap)

(b) No interpretador, desenhe uma matriz com duas linhas (idˆenticas) e oito colunas (equivalente a uma lista de duas listas de dimens˜ao 8), pintando as colunas com a seguinte sequˆencia de cores: preto, vermelho, amarelo, verde, ciano, azul, magenta e branco.

0

1

2

3

4

5

6

7

0.5

0.0

0.5

1.0

1.5

(c) Dada uma cor definida por um terno RGB (vermelho, verde e azul), ´e poss´ıvel obter o tom de cinzento correspondente (c, c, c) atrav´es da seguinte f´ormula: c = 0.30 vermelho + 0.59 verde + 0.11 azul. Por exemplo, para o amarelo definido por (1, 1, 0) corresponde o tom de cinzento (0.89, 0.89, 0.89) porque 0.3 × 1 + 0.59 × 1 + 0.11 × 0 = 0.89.

Repita a al´ınea (b), pintando na segunda linha, abaixo de cada cor, o tom de cinzento correspondente.

Sugest˜ao: Defina duas fun¸c˜oes: i) a primeira fun¸c˜ao converte um terno RGB no tom de cinzento correspondente por recurso `a f´ormula dada; ii) a segunda fun¸c˜ao retorna a paleta com os tons de cinzento computados a partir de uma paleta de entrada.

(4)

0

1

2

3

4

5

6

7

0.5

0.0

0.5

1.0

1.5

Exerc´ıcio 3

Relembre o exerc´ıcio 6 da Ficha Pr´atica No 2, onde calculou a magnitude de um sismo por recurso `

a formula emp´ırica de Lillie, a qual se reproduz seguidamente:

M = log10A + 1.6 log10d − 0.15

onde M ´e a magnitude (na escala de Richter), A ´e a amplitude das ondas s´ısmicas (em mil´ımetros) e d ´e a distˆancia ao epicentro (em km).

(a) Utilizando a instru¸c˜ao plot do matplotlib, desenhe um gr´afico da magnitude de um sismo registado no sism´ografo com uma amplitude de 8 mm, em fun¸c˜ao da distˆancia ao epicentro (avaliada entre os 10 km e os 200 km, em intervalos de 5 km).

(b) Desenhe um novo gr´afico, nas mesmas condi¸c˜oes da al´ınea (a), mas adicionando duas novas s´eries, correspondentes `as amplitudes de 16 e 32 mm. Utilize cores diferentes para representar cada s´erie.

(5)

Exerc´ıcio 4

Recorde o exerc´ıcio 1 da Ficha Pr´atica No4, onde foi medida a concentra¸c˜ao de chumbo no solo em v´arios pontos e a v´arias profundidades. Os dados recolhidos podem ser obtidos executando o ficheiro obtemConcentrPb.py e chamando a fun¸c˜ao obtemConcentrP b, fornecida anteriormente, que devolve uma lista da contamina¸c˜ao em Pb constitu´ıda por:

• uma primeira lista, com um n´umero de 1 a 20, que identifica o ponto de amostragem;

• uma segunda lista, com a profundidade da amostra, em cent´ımetros;

• uma terceira lista, com a concentra¸c˜ao de chumbo da amostra, em partes por milh˜ao.

H´a v´arias amostras por ponto, num total de 100 amostras em 20 pontos diferentes.

(a) Desenhe um gr´afico que, para cada ponto de amostragem, represente as concentra¸c˜oes de chumbo das amostras existentes na lista de contamina¸c˜ao (a diferentes profundidades).

(b) Desenhe um gr´afico de barras que mostre a concentra¸c˜ao m´edia de chumbo, observada no conjunto das profundidades analisadas, em cada ponto de amostragem. Nota: Considere que a m´edia ´e zero quando o n´umero de ocorrˆencias ´e zero.

(c) Desenhe um gr´afico de barras que mostre a concentra¸c˜ao m´edia de chumbo em cada ponto de amostragem, separando as amostras em duas categorias: amostras superficiais (profundidade ≤ 50 cm) e amostras profundas.

(6)
(7)

0.0

2.5

5.0

7.5

10.0

12.5

15.0

17.5

20.0

pontos analisados

0

5

10

15

20

25

concentracao (ppm)

Concentracao Media de Chumbo

amostras superficiais

amostras profundas

Referências

Documentos relacionados

Discussion The present results show that, like other conditions that change brain excitability, early environmental heat exposure also enhanced CSD propagation in adult rats.. The

The main objectives of this data analysis are divided into two classes: i) General Statistics: give an overview of structured information on Wikipedia as a whole, showing raw numbers

Atualmente os currículos em ensino de ciências sinalizam que os conteúdos difundidos em sala de aula devem proporcionar ao educando o desenvolvimento de competências e habilidades

O primeiro passo para introduzir o MTT como procedimento para mudança do comportamento alimentar consiste no profissional psicoeducar o paciente a todo o processo,

Para o efeito, numa aula sobre a CL, interrogam-se os estudantes, através de duas questões escritas, sobre a altura e a circunstância em que cada um teve consciência da sua

Chamamos a atenção para a nota 7(b) às demonstrações contábeis consolidadas do Conglomerado Prudencial, que descreve que, em 30 de junho de 2017, o Banco possui créditos junto

The results of seedling emergence found with ecotypes Rondonópolis, Redenção and Cacoal corroborate the findings of the only article found in the literature, a study conducted in

Na Q8, onde foi questionado se o aluno entende como fundamental para o seu crescimento pessoal e profissional a presença do professor como um gerenciador do processo