Closed
Description
Issue
When plotting with pd.NA
, axis ordering get reversed into descending.
Workaround
np.nan
does not produce this issue
Expected Behavior
NAs should be excluded without reversing axis order
Reproducible Example
import pandas as pd
import numpy as np
import seaborn as sns
import matplotlib.pyplot as plt
mock_data = pd.DataFrame({
'date': ['0', '1', '2', '3'],
'value': [1, 2, 1, 1.5]
})
mock_data_full = mock_data.copy()
mock_data_full['type'] = 'no_NA'
mock_data_pd_na = mock_data.copy()
mock_data_pd_na['type'] = 'pd.NA'
mock_data_pd_na.loc[2, 'value'] = pd.NA
mock_data_np_nan = mock_data.copy()
mock_data_np_nan['type'] = 'np.nan'
mock_data_np_nan.loc[2, 'value'] = np.nan
test_data = pd.concat([mock_data_full, mock_data_pd_na, mock_data_np_nan])
grid = sns.FacetGrid(
data=test_data,
col='type',
sharey=False,
sharex=True, # time-series consistency
)
grid.map(sns.lineplot, 'date', 'value', alpha=0.5)
plt.show()
Result
System Info
print(f'''
python: {sys.version},
seaborn: {sns.__version__},
pandas: {pd.__version__}
''')
python: 3.9.7 (default, Sep 9 2021, 23:20:13) [GCC 9.3.0],
seaborn: 0.11.2,
pandas: 1.3.4