How to generate a horizontal multiple chart using python
Good afternoon, I'm doing a job for college where I need to generate a multiple chart in horizontal bars.
I am using the following code:
df_escolaridade['Espacialidades'] = df_escolaridade['Espacialidades'].astype("string")
df_escolaridade
index = []
for col in df_escolaridade.columns[2:]:
df_escolaridade[col] = pd.to_numeric(df_escolaridade[col],errors='coerce')
index.append(col)
ax = df_escolaridade.plot.barh(figsize=(15,10), y = index)
But I would like the chart to be separated by city, example of the chart generated in excel:
Follows dataframe I'm using:
Since now I appreciate the answers, very much thank you!
0
Author: Miguel Botelho, 2020-09-26
1 answers
Imports:
import pandas as pd
import matplotlib.pyplot as plt
Loading data frame:
df_escolaridade = pd.read_csv('./dataframe.csv', index_col=[0])
df_escolaridade.drop(columns = 'Código', inplace = True)
Checking data types:
df_escolaridade.dtypes
% dos ocupados com fundamental completo - 18 anos ou mais 2010 float64
% dos ocupados com médio completo - 18 anos ou mais 2010 float64
% dos ocupados com superior completo - 18 anos ou mais 2010 float64
% de 18 a 20 anos com médio completo 2010 float64
% de 15 a 17 anos com fundamental completo 2010 float64
% de 18 a 24 anos com fundamental completo 2010 float64
% de 18 anos ou mais com fundamental completo 2010 float64
% de 25 anos ou mais com fundamental completo 2010 float64
% de 18 a 24 anos com médio completo 2010 float64
% de 18 anos ou mais com médio completo 2010 float64
% de 25 anos ou mais com médio completo 2010 float64
% de 25 anos ou mais com superior completo 2010 float64
Expectativa de anos de estudo 2010 float64
this is where we shift the columns to the rows, making the pivot.
'pivoting' or data frame:
df_pivotado = pd.pivot_table(df_escolaridade, values = df_escolaridade.columns,
columns='Espacialidades')
Plotting the graph:
df_pivotado.plot(kind = 'barh', figsize = (15,10))
-1
Author: lmonferrari, 2020-09-28 00:53:36