Programação  
 
Conhecimento computador >> Programação >> Programação Python >> 
Como converter um arquivo CSV para um gráfico em Python
arquivos A maioria dos aplicativos de banco de dados e planilhas podem convenientemente os dados da tabela de saída na forma de ( valores separados por vírgula ) CSV. Enquanto os arquivos CSV são úteis por causa de sua simplicidade e portabilidade , eles são ineficazes para a exibição ou análise de grandes quantidades de dados. Usando Python e uma biblioteca de código externo, matplotlib , um programador pode superar essa limitação , convertendo os dados brutos em CSV , um gráfico visualmente atraente legível adequado para publicação na web ou imprimir. Coisas que você precisa
ambiente de script Python
Matplotlib , 2D plotagem Python biblioteca de arquivos CSV
contendo duas colunas de dados numéricos
editor de texto
Show Mais instruções
renderização de um arquivo CSV como um gráfico usando Python e Matplotlib
1

Crie um arquivo CSV simples para o teste. Uma amostra pode ter esta aparência :

1,22,33,84,135,186,217,137.5,42.5,4.3
2

importar as bibliotecas python necessárias em seu arquivo de código :

matplotlib.pyplot importação como sys PLTImport csvimport
3

Abra o arquivo CSV e criar um objeto leitor dele. Declare as variáveis ​​para definir os limites superior e inferior para os xey valores do eixo do gráfico :

csv_reader = csv.reader ( open (' test.csv ')) BigX = float ( - sys.maxint - 1) Bigy = float ( - sys.maxint -1) smallx = float ( sys.maxint ) smally = float ( sys.maxint )
4

iterar sobre cada linha contida no objeto leitor armazenar cada linha como um vértice em uma matriz de vértice. No mesmo loop comparar os valores xey , a fim de guardar os seus limites superiores e inferiores . Classificar a matriz vértice e depois percorrê-lo novamente . Esta loja tempo os xey valores ordenados em matrizes separadas :

verts = [] for linha csv_reader : verts.append (linha) se float ( row [ 0] ) > BigX : BigX = float ( row [ 0] ) se float ( row [ 1] ) > Bigy : Bigy = float ( row [ 1] ) se float ( row [ 0] ) < smallx : smallx = float ( row [ 0] ) se float ( row [ 1] ) < smally : smally = float ( row [ 1] ) verts.sort () = x_arr y_arr = [] for vert em verts []: x_arr.append ( vert [0]) y_arr.append ( vert [1] )
5

Crie um objeto FigureCanvas usando o objeto matplotlib pyplot importado. Adicionar eixos do gráfico para os FigureCanvas chamando os add_axes função e passando uma matriz de valores na forma de : esquerda, baixo, largura, altura . Estes valores definem em que o gráfico é colocada na tela --- podem variar de 0,0 a 1,0 :

fig plt.figure = ( ax ) = fig.add_axes ( [ 0,1 , 0,1 , 0,8 , 0,8 ] )
6

Formate o gráfico adicionando rótulos e definir os valores mínimo e máximo para cada eixo : (' dados y ' em

ax.set_xlabel ('x dados ') ax.set_ylabel ) ax.set_xlim ( smallx , BigX ) ax.set_ylim ( smally , Bigy )
7

Faça o gráfico , passando nas duas matrizes que contêm os valores de y recuperadas do arquivo CSV x e . Personalize o enredo linha passando em valores opcionais, tais como cor da linha (cor) ou largura de linha (PV). Mostrar o gráfico acabado , chamando o método show para abrir uma janela e armazenar a imagem chamando savefig para criar um arquivo de bitmap em disco :

ax.plot ( x_arr , y_arr , color = 'azul', lw = 2) plt.show () fig.savefig (' test.png ')

Anterior :

Próximo : No
  Os artigos relacionados
·Como construir um analisador em Python 
·Como ler a última linha de um arquivo em Python 
·Como testar em Python Se um objeto está em uma classe 
·Python Scripts e Programas 
·Navegando um arquivo em Python 
·Como importar uma classe Python De um shell interativo 
·Como limpar uma matriz ou lista em Python 
·Usos de Python Web 
·Como encontrar o máximo e Número Mínimo em Python 
·Como testar uma faixa de IP em Python 
  Artigos em destaque
·Como parar o MySQL Com Ubuntu 
·Como desativar um servidor Keyboard Cliente Usando Java…
·Como enviar texto HTML Com SMTP Perl 
·Como extrair o primeiro dígito em Python 
·Como fazer matrizes em PCSpim 
·Como criar uma tabela MySQL 
·Como fazer uma API do Twitter Córrego em Perl 
·Como substituir Python Direito 
·Função de AS3 classe Sprite 
·Regras para Papel Soco Codificação 
Cop e direita © Conhecimento computador http://ptcomputador.com Todos os Direitos Reservados