Bokeh - plotagens com glifos
Qualquer gráfico é geralmente composto de uma ou mais formas geométricas, como line, circle, rectangle,etc. Essas formas têm informações visuais sobre o conjunto de dados correspondente. Na terminologia Bokeh, essas formas geométricas são chamadas de glifos. Bokeh plotagens construídas usandobokeh.plotting interfaceuse um conjunto padrão de ferramentas e estilos. No entanto, é possível personalizar os estilos usando as ferramentas de plotagem disponíveis.
Tipos de parcelas
Diferentes tipos de gráficos criados usando glifos são fornecidos abaixo -
Gráfico de linha
Este tipo de gráfico é útil para visualizar os movimentos de pontos ao longo dos eixos xey na forma de uma linha. É usado para realizar análises de séries temporais.
Gráfico de barra
Isso geralmente é útil para indicar a contagem de cada categoria de uma coluna ou campo específico em seu conjunto de dados.
Patch plot
Este gráfico indica uma região de pontos em uma determinada tonalidade de cor. Este tipo de gráfico é usado para distinguir grupos diferentes dentro do mesmo conjunto de dados.
Gráfico de dispersão
Este tipo de gráfico é usado para visualizar a relação entre duas variáveis e para indicar a força da correlação entre elas.
Diferentes gráficos de glifos são formados chamando o método apropriado da classe Figura. O objeto Figura é obtido seguindo o construtor -
from bokeh.plotting import figure
figure(**kwargs)
O objeto Figure pode ser personalizado por vários argumentos de palavra-chave.
Sr. Não | Título | Defina o título do enredo |
---|---|---|
1 | x_axis_label | Definir título do eixo x |
2 | y_axis_label | Definir título para o eixo y |
3 | plot_width | Definir a largura da figura |
4 | plot_height | Definir altura da figura |
Gráfico de linha
o line() methoddo objeto Figura adiciona um glifo de linha à figura Bokeh. Ele precisa dos parâmetros xey como matrizes de dados para mostrar seu relacionamento linear.
from bokeh.plotting import figure, show
fig = figure()
fig.line(x,y)
show(fig)
O código a seguir renderiza um gráfico de linha simples entre dois conjuntos de valores na forma de objetos de lista do Python -
from bokeh.plotting import figure, output_file, show
x = [1,2,3,4,5]
y = [2,4,6,8,10]
output_file('line.html')
fig = figure(title = 'Line Plot example', x_axis_label = 'x', y_axis_label = 'y')
fig.line(x,y)
show(fig)
Resultado
Gráfico de barra
O objeto de figura tem dois métodos diferentes para construir o gráfico de barra
hbar ()
As barras são mostradas horizontalmente na largura do gráfico. ohbar() method tem os seguintes parâmetros -
Sr. Não | y | As coordenadas y dos centros das barras horizontais. |
---|---|---|
1 | altura | As alturas das barras verticais. |
2 | direito | As coordenadas x das arestas direitas. |
3 | esquerda | As coordenadas x das bordas esquerdas. |
O código a seguir é um exemplo de horizontal bar usando Bokeh.
from bokeh.plotting import figure, output_file, show
fig = figure(plot_width = 400, plot_height = 200)
fig.hbar(y = [2,4,6], height = 1, left = 0, right = [1,2,3], color = "Cyan")
output_file('bar.html')
show(fig)
Resultado
vbar ()
As barras são mostradas verticalmente na altura do gráfico. ovbar() method tem os seguintes parâmetros -
Sr. Não | x | As coordenadas x dos centros das barras verticais. |
---|---|---|
1 | largura | As larguras das barras verticais. |
2 | topo | As coordenadas y das arestas superiores. |
3 | inferior | As coordenadas y das arestas inferiores. |
O código a seguir exibe vertical bar plot -
from bokeh.plotting import figure, output_file, show
fig = figure(plot_width = 200, plot_height = 400)
fig.vbar(x = [1,2,3], width = 0.5, bottom = 0, top = [2,4,6], color = "Cyan")
output_file('bar.html')
show(fig)
Resultado
Patch plot
Um gráfico que sombreia uma região do espaço com uma cor específica para mostrar uma região ou grupo com propriedades semelhantes é denominado como um gráfico de correção em Bokeh. O objeto Figura possui os métodos patch () e patches () para esse propósito.
fragmento()
Este método adiciona glifo de patch a determinada figura. O método possui os seguintes argumentos -
1 | x | As coordenadas x para os pontos do patch. |
2 | y | As coordenadas y para os pontos do patch. |
Um simples patch plot é obtido pelo seguinte código Python -
from bokeh.plotting import figure, output_file, show
p = figure(plot_width = 300, plot_height = 300)
p.patch(x = [1, 3,2,4], y = [2,3,5,7], color = "green")
output_file('patch.html')
show(p)
Resultado
patches ()
Este método é usado para desenhar vários patches poligonais. Necessita dos seguintes argumentos -
1 | xs | As coordenadas x para todos os patches, fornecidas como uma “lista de listas”. |
2 | sim | As coordenadas y para todos os patches, fornecidas como uma “lista de listas”. |
Como exemplo do método patches (), execute o seguinte código -
from bokeh.plotting import figure, output_file, show
xs = [[5,3,4], [2,4,3], [2,3,5,4]]
ys = [[6,4,2], [3,6,7], [2,4,7,8]]
fig = figure()
fig.patches(xs, ys, fill_color = ['red', 'blue', 'black'], line_color = 'white')
output_file('patch_plot.html')
show(fig)
Resultado
Marcadores de dispersão
Gráficos de dispersão são muito comumente usados para determinar a relação bivariada entre duas variáveis. A interatividade aprimorada é adicionada a eles usando Bokeh. O gráfico de dispersão é obtido chamando o método scatter () do objeto Figura. Ele usa os seguintes parâmetros -
1 | x | valores ou nomes de campo das coordenadas x do centro |
2 | y | valores ou nomes de campo de coordenadas y de centro |
3 | Tamanho | valores ou nomes de campos de tamanhos em unidades de tela |
4 | marcador | valores ou nomes de campo de tipos de marcadores |
5 | cor | definir preenchimento e cor da linha |
As seguintes constantes de tipo de marcador são definidas no Bokeh: -
- Asterisk
- Circle
- CircleCross
- CircleX
- Cross
- Dash
- Diamond
- DiamondCross
- Hex
- InvertedTriangle
- Square
- SquareCross
- SquareX
- Triangle
- X
Seguir o código Python gera gráfico de dispersão com marcas circulares.
from bokeh.plotting import figure, output_file, show
fig = figure()
fig.scatter([1, 4, 3, 2, 5], [6, 5, 2, 4, 7], marker = "circle", size = 20, fill_color = "grey")
output_file('scatter.html')
show(fig)