Округление значений xtick на графике панд - PullRequest
1 голос
/ 22 декабря 2019

Есть ли простой способ округлить значения xtick на графике панд? Я строю квантили, и вот что я получаю:

pd.Series(argmax_indexes).quantile(np.arange(0,1.05, 0.05))
0.00    500.0
0.05    560.8
0.10    582.8
0.15    589.0
0.20    593.0
0.25    595.0
0.30    596.0
0.35    597.0
0.40    598.0
0.45    598.0
0.50    599.0
0.55    599.0
0.60    599.0
0.65    600.7
0.70    602.0
0.75    603.0
0.80    606.0
0.85    608.0
0.90    616.0
0.95    634.1
1.00    699.0

pd.Series(argmax_indexes).quantile(np.arange(0,1.05, 0.05)).plot(kind = 'bar')

enter image description here

Ответы [ 2 ]

3 голосов
/ 22 декабря 2019

Это как-то связано с тем, как вычисляется float64, но вы можете решить свою проблему, настроив и напишите что-то вроде этого, с некоторыми примерами данных:

s = pd.Series([1,10,20,30,50]).quantile(np.arange(0,1.05, 0.05))
s.index = s.index.map(lambda l : np.around(l,2))
s.plot(kind = 'bar') 
1 голос
/ 22 декабря 2019

Если вы хотите сделать в одном вкладыше, это должно работать хорошо:

import numpy as np
import pandas as pd
import seaborn as sns

df = sns.load_dataset('tips')
df['tip'].quantile(np.arange(0,1.05,0.05)).reset_index().round(2).plot(kind='bar',x='index',y='tip')

вывод

enter image description here

...