import json import numpy as np import matplotlib.pyplot as plt # Função para ler dados de um arquivo JSON def ler_dados_json(nome_do_arquivo): with open(nome_do_arquivo, 'r') as arquivo: dados = json.load(arquivo) return dados # Usando a função para carregar os dados do arquivo JSON data = ler_dados_json('contours_data.json') # Inicializando uma variável para armazenar o contorno da classe "rua", caso exista contorno_rua = None # Iterando pelos objetos no JSON para encontrar a classe "rua" for item in data: if item["Classe"] == "rua": contorno_rua = item["Contornos"] break # Interrompe o loop se a classe "rua" for encontrada # Verifica se um contorno foi encontrado if contorno_rua is not None: # Converte os pontos para uma estrutura que facilita as comparações points = np.array(contorno_rua) # Plotando os pontos e a linha que os conecta plt.figure(figsize=(10, 10)) plt.plot(points[:, 0], points[:, 1], '-o', markersize=5, linewidth=2) # Configurando os limites do gráfico para melhor visualização plt.xlim(points[:, 0].min() - 10, points[:, 0].max() + 10) plt.ylim(points[:, 1].min() - 10, points[:, 1].max() + 10) # Invertendo o eixo Y para que a origem (0,0) fique no canto inferior esquerdo plt.gca().invert_yaxis() # Adicionando título e labels aos eixos plt.title('Figura formada pelo contorno da classe "rua"') plt.xlabel('Eixo X') plt.ylabel('Eixo Y') plt.grid(True) plt.show() else: print("Não foi encontrado um contorno para a classe 'rua'.")