matplotlib.axes.Axes.plot #
- Machados. plot ( * args , scalex = True , scaley = True , data = None , ** kwargs ) [source] #
Plote y versus x como linhas e/ou marcadores.
Assinaturas de chamada:
plot([x], y, [fmt], *, data=None, **kwargs) plot([x], y, [fmt], [x2], y2, [fmt2], ..., **kwargs)
As coordenadas dos pontos ou nós das linhas são dadas por x , y .
O parâmetro opcional fmt é uma maneira conveniente de definir formatação básica como cor, marcador e estilo de linha. É uma notação de string de atalho descrita na seção Notas abaixo.
>>> plot(x, y) # plot x and y using default line style and color >>> plot(x, y, 'bo') # plot x and y using blue circle markers >>> plot(y) # plot y using x as index array 0..N-1 >>> plot(y, 'r+') # ditto, but with red plusses
Você pode usar
Line2D
propriedades como argumentos de palavras-chave para obter mais controle sobre a aparência. As propriedades de linha e fmt podem ser misturadas. As duas chamadas a seguir produzem resultados idênticos:>>> plot(x, y, 'go--', linewidth=2, markersize=12) >>> plot(x, y, color='green', marker='o', linestyle='dashed', ... linewidth=2, markersize=12)
Ao entrar em conflito com fmt , os argumentos de palavra-chave têm precedência.
Plotando dados rotulados
Existe uma maneira conveniente de plotar objetos com dados rotulados (ou seja, dados que podem ser acessados por index
obj['y']
). Em vez de fornecer os dados em x e y , você pode fornecer o objeto no parâmetro de dados e apenas fornecer os rótulos para x e y :>>> plot('xlabel', 'ylabel', data=obj)
Todos os objetos indexáveis são suportados. Isso pode ser, por exemplo
dict
, umpandas.DataFrame
array numpy estruturado.Plotando vários conjuntos de dados
Existem várias maneiras de plotar vários conjuntos de dados.
A maneira mais direta é apenas ligar
plot
várias vezes. Exemplo:>>> plot(x1, y1, 'bo') >>> plot(x2, y2, 'go')
Se x e/ou y forem matrizes 2D, um conjunto de dados separado será desenhado para cada coluna. Se x e y forem 2D, eles devem ter a mesma forma. Se apenas um deles for 2D com forma (N, m) o outro deve ter comprimento N e será usado para todo conjunto de dados m.
Exemplo:
>>> x = [1, 2, 3] >>> y = np.array([[1, 2], [3, 4], [5, 6]]) >>> plot(x, y)
é equivalente a:
>>> for col in range(y.shape[1]): ... plot(x, y[:, col])
A terceira maneira é especificar vários conjuntos de grupos [x] , y , [fmt] :
>>> plot(x1, y1, 'g^', x2, y2, 'g-')
Nesse caso, qualquer argumento de palavra-chave adicional se aplica a todos os conjuntos de dados. Além disso, esta sintaxe não pode ser combinada com o parâmetro de dados .
Por padrão, cada linha recebe um estilo diferente especificado por um 'ciclo de estilo'. Os parâmetros de propriedade fmt e line são necessários apenas se você quiser desvios explícitos desses padrões. Como alternativa, você também pode alterar o ciclo de estilo usando
rcParams["axes.prop_cycle"]
(padrão: ).cycler('color', ['#1f77b4', '#ff7f0e', '#2ca02c', '#d62728', '#9467bd', '#8c564b', '#e377c2', '#7f7f7f', '#bcbd22', '#17becf'])
- Parâmetros :
- x, y tipo matriz ou escalar
As coordenadas horizontal/vertical dos pontos de dados. Os valores x são opcionais e o padrão é
range(len(y))
.Normalmente, esses parâmetros são matrizes 1D.
Eles também podem ser escalares ou bidimensionais (nesse caso, as colunas representam conjuntos de dados separados).
Esses argumentos não podem ser passados como palavras-chave.
- fmt str, opcional
Uma string de formato, por exemplo, 'ro' para círculos vermelhos. Consulte a seção Notas para obter uma descrição completa das strings de formato.
As strings de formato são apenas uma abreviação para definir rapidamente as propriedades básicas da linha. Tudo isso e muito mais também podem ser controlados por argumentos de palavra-chave.
Este argumento não pode ser passado como palavra-chave.
- objeto indexável de dados , opcional
Um objeto com dados rotulados. Se fornecido, forneça os nomes dos rótulos para plotar em x e y .
Observação
Tecnicamente, há uma pequena ambiguidade nas chamadas em que o segundo rótulo é um fmt válido . pode ser ou . Nesses casos, a primeira interpretação é escolhida, mas um aviso é emitido. Você pode suprimir o aviso adicionando uma string de formato vazia .
plot('n', 'o', data=obj)
plt(x, y)
plt(y, fmt)
plot('n', 'o', '', data=obj)
- Devoluções :
- lista de
Line2D
Uma lista de linhas que representam os dados plotados.
- lista de
- Outros Parâmetros :
- scalex, scaley bool, padrão: True
Esses parâmetros determinam se os limites de visão são adaptados aos limites de dados. Os valores são repassados para
autoscale_view
.- **
Line2D
propriedades kwargs, opcional kwargs são usados para especificar propriedades como um rótulo de linha (para legendas automáticas), largura de linha, antialiasing, cor da face do marcador. Exemplo:
>>> plot([1, 2, 3], [1, 2, 3], 'go-', label='line 1', linewidth=2) >>> plot([1, 2, 3], [1, 4, 9], 'rs', label='line 2')
Se você especificar várias linhas com uma chamada de plotagem, os kwargs se aplicam a todas essas linhas. Caso o objeto de rótulo seja iterável, cada elemento é usado como rótulo para cada conjunto de dados.
Aqui está uma lista de
Line2D
propriedades disponíveis:Propriedade
Descrição
uma função de filtro, que usa uma matriz flutuante (m, n, 3) e um valor de dpi e retorna uma matriz (m, n, 3) e dois deslocamentos do canto inferior esquerdo da imagem
escalar ou nenhum
bool
antialiased
ou aabool
bool
Patch ou (Caminho, Transformação) ou Nenhum
color
ou ccor
CapStyle
ou {'bunda', 'projetando', 'redondo'}JoinStyle
ou {'esquadria', 'redondo', 'chanfrado'}sequência de flutuações (on/off ink em pontos) ou (None, None)
(2, N) array ou dois arrays 1D
drawstyle
ou ds{'default', 'steps', 'steps-pre', 'steps-mid', 'steps-post'}, default: 'default'
{'completo', 'esquerda', 'direita', 'inferior', 'superior', 'nenhum'}
cor ou nenhum
str
bool
objeto
linestyle
ou ls{'-', '--', '-.', ':', '', (offset, on-off-seq), ...}
linewidth
ou lwflutuador
string de estilo de marcador,
Path
ouMarkerStyle
markeredgecolor
ou meccor
markeredgewidth
ou miarflutuador
markerfacecolor
ou mfccor
markerfacecoloralt
ou mfcaltcor
markersize
ou senhoraflutuador
None ou int ou (int, int) ou slice ou list[int] ou float ou (float, float) ou list[bool]
bool
float ou callable[[Artist, Event], tuple[bool, dict]]
desconhecido
bool
(escala: flutuante, comprimento: flutuante, aleatoriedade: flutuante)
bool ou nenhum
CapStyle
ou {'bunda', 'projetando', 'redondo'}JoinStyle
ou {'esquadria', 'redondo', 'chanfrado'}desconhecido
str
bool
matriz 1D
matriz 1D
flutuador
Veja também
scatter
Gráfico de dispersão XY com marcadores de tamanhos e/ou cores variados (às vezes também chamado de gráfico de bolhas).
Notas
Strings de formato
Uma string de formato consiste em uma parte para cor, marcador e linha:
fmt = '[marker][line][color]'
Cada um deles é opcional. Se não for fornecido, o valor do ciclo de estilo é usado. Exceção: Se
line
for fornecido, mas nãomarker
, os dados serão uma linha sem marcadores.Outras combinações como
[color][marker][line]
também são suportadas, mas observe que sua análise pode ser ambígua.marcadores
personagem
Descrição
'.'
marcador de ponto
','
marcador de pixel
'o'
marcador de círculo
'v'
marcador de triângulo_para baixo
'^'
marcador de triângulo_up
'<'
marcador triângulo_esquerdo
'>'
marcador triângulo_direito
'1'
marcador tri_down
'2'
marcador tri_up
'3'
marcador tri_left
'4'
marcador tri_right
'8'
marcador de octógono
's'
marcador quadrado
'p'
marcador de pentágono
'P'
marcador de mais (preenchido)
'*'
marcador de estrela
'h'
hexágono1 marcador
'H'
marcador hexagon2
'+'
mais marcador
'x'
x marcador
'X'
x (preenchido) marcador
'D'
marcador de diamante
'd'
marcador thin_diamond
'|'
marcador vline
'_'
marcador de linha
Estilos de linha
personagem
Descrição
'-'
estilo de linha sólida
'--'
estilo de linha tracejada
'-.'
estilo de linha traço-ponto
':'
estilo de linha pontilhada
Exemplos de strings de formato:
'b' # blue markers with default shape 'or' # red circles '-g' # green solid line '--' # dashed line with default color '^k:' # black triangle_up markers connected by a dotted line
cores
As abreviaturas de cores suportadas são os códigos de uma única letra
personagem
cor
'b'
azul
'g'
verde
'r'
vermelho
'c'
ciano
'm'
magenta
'y'
amarelo
'k'
Preto
'w'
branco
e as
'CN'
cores que indexam no ciclo de propriedade padrão.Se a cor for a única parte da string de formato, você também pode usar qualquer
matplotlib.colors
especificação, por exemplo, nomes completos ('green'
) ou strings hexadecimais ('#008000'
).
Exemplos usando matplotlib.axes.Axes.plot
#
Plotando variáveis categóricas
Demonstração da coleção de eventos
Preenchendo a área entre linhas
Demonstração de preenchimento entre x
Personalizando estilos de linha tracejada
Linhas com um efeito de caminho assinalado
Mapeando as propriedades do marcador para dados multivariados
Criando uma linha do tempo com linhas, datas e texto
Gráfico de contorno de dados espaçados irregularmente
grades pcolormesh e sombreamento
Controlando os limites de exibição usando margens e sticky_edges
Redimensionando eixos com layout restrito
Redimensionando eixos com layout compacto
Rótulos de figuras: suptitle, supxlabel, supylabel
Compartilhamento de limites e exibições do eixo
Criando vários subplots usando plt.subplots
Gráficos com escalas diferentes
Usando histogramas para traçar uma distribuição cumulativa
Algumas características da função histograma (hist)
Usando texto acentuado no Matplotlib
Rótulo de ângulo invariante de escala
Compondo legendas personalizadas
Demonstração do AnnotationBbox
Rotulando ticks usando notação de engenharia
Referência de estilo de seta de anotação
Legenda usando rótulos predefinidos
Renderizando equações matemáticas usando o TeX
Rotação do texto em relação à linha
Controlando programaticamente o ajuste da subtrama
Folha de estilo de fundo escuro
Folha de estilo FiveThirtyEight
Eixos com um tamanho físico fixo
lombadas personalizadas com axisartist
Integral como a área sob uma curva
Preços das ações ao longo de 32 anos
Caminhada aleatória 3D animada
Mova o mouse e clique em eventos
Evento de pressionamento de tecla
Escolha a demonstração do evento
Escolher demonstração do evento2
Mudando as cores das linhas que cruzam uma caixa
Efeito de caminho TickedStroke
Plotar dados 2D em plotagem 3D
Gráfico de superfície de caixa 3D
Gráfico de radar (também conhecido como gráfico de aranha ou estrela)
Limites personalizados da lombada
Centralizando rótulos entre os carrapatos
Formatando marcações de data usando ConciseDateFormatter
Data de conversão de demonstração
Formatador de marca personalizado para séries temporais
Defina os rótulos padrão do eixo y à direita
Definindo rótulos de escala de uma lista de valores
Mova os rótulos dos marcadores do eixo x para o topo
Estilos de conexão para anotações
Especificações de grade aninhadas
Seletores de retângulo e elipse
Ajustando controles deslizantes para valores discretos
Organizando vários eixos em uma figura
Renderização mais rápida usando blitting