Olá a todos!
Ultimamente nas aulas estou tendo o costume de prever passos e tentar fazer melhorias. Eu neste tópico quero mostrar uma melhoria na função criada pelo Instrutor Guilherme na aula de "Decompondo vendas" para criação de gráficos e também aproveitar e fazer algumas perguntas do meu micro-projetinho. Então vamos lá!
A minha ideia era criar um programa que insira informações através da função input()
, para isso, peguei a função criada pelo professor e a acoplei dentro de uma nova função:
def plotar(dataset, x, y, titulo, labelx, labely):
sns.set_palette('Accent')
sns.set_style('darkgrid')
alucar_g0 = sns.lineplot(x=x, y=y, data = dataset)
alucar_g0.figure.set_size_inches(12,6)
alucar_g0.set_title(titulo, loc='left', fontsize=18)
alucar_g0.set_xlabel(labelx, fontsize = 14)
alucar_g0.set_ylabel(labely,fontsize = 14)
alucar_g0 = alucar_g0
alucar_g0.figure
def dados(dataset, x=x, y=y, titulo=titulo, labelx=labelx, labely=labely):
#dataset = object(input(f'Forneça o DataFrame: {}'))
x = str(input(f'Forneça os dados para o eixo x: {x}'))
y = str(input(f'Forneça os dados para o eixo y: {y}'))
titulo = input(f'Nomeia o título do gráfico:{titulo}')
labelx = input(f'Nomeia o eixo x do gráfico:{labelx}')
labely = input(f'Nomeia o eixo y do gráfico:{labely}')
plotar(dataset,x,y,labelx,labely,titulo)
O resultado final foi esse aqui:
Vamos as dúvidas e observações:
1. Eu tentei usar a função .format()
, mas não tive sucesso. Eu vou persistir aqui depois de escrever este tópico.
2. Na minha função foi necessário colocar o parâmetro do dataset, pois não soube inserir com a função .input()
3. Teria como fazer a mesma função com menos linhas?