Python Pandas 箱线图

各国家用户消费分布

import numpy as np
import pandas as pd
import matplotlib.pyplot as plt

data = {
    'China': [1000, 1200, 1300, 1400, 1500, 1600, 1700, 1800, 1900, 2500],
    'America': [1200, 1300, 1400, 1500, 1600, 1700, 1800, 1900, 2000, 2100],
    'Britain': [1000, 1200, 1300, 1400, 1500, 1600, 1700, 1800, 1900, 2000],
    "Russia": [800, 1000, 1200, 1300, 1400, 1500, 1600, 1700, 1800, 1900]
}
df = pd.DataFrame(data)

# df.plot.box(title="Consumer spending in each country", vert=False)
df.plot.box(title="Consumer spending in each country")

plt.grid(linestyle="--", alpha=0.3)
plt.show()

  

 

import numpy as np
import pandas as pd
import matplotlib.pyplot as plt

data = {
    'China': [1000, 1200, 1300, 1400, 1500, 1600, 1700, 1800, 1900, 2500],
    'America': [1200, 1300, 1400, 1500, 1600, 1700, 1800, 1900, 2000, 2100],
    'Britain': [1000, 1200, 1300, 1400, 1500, 1600, 1700, 1800, 1900, 2000],
    "Russia": [800, 1000, 1200, 1300, 1400, 1500, 1600, 1700, 1800, 1900]
}
df = pd.DataFrame(data)

from pandas.plotting import table

fig, ax = plt.subplots(1, 1)

table(ax, np.round(df.describe(), 2),
      loc='upper right',
      colWidths=[0.1, 0.1, 0.1, 0.1]
      )

# df.plot.box(title="Consumer spending in each country", vert=False)
df.plot.box(title="Consumer spending in each country",
            ax=ax,
            ylim=(750, 3000))

plt.grid(linestyle="--", alpha=0.3)
plt.show()

  

 

import numpy as np
import pandas as pd
import matplotlib.pyplot as plt

data = {"gender": [1, 0, 1, 0, 1, 0, 1, 0, 1, 0],
        'China': [1000, 1200, 1300, 1400, 1500, 1600, 1700, 1800, 1900, 2500],
        'America': [1200, 1300, 1400, 1500, 1600, 1700, 1800, 1900, 2000, 2100]
        }
df = pd.DataFrame(data)

# df.boxplot(column=["China", "America"], by="gender",vert=False)
df.boxplot(column=["China", "America"], by="gender")

plt.grid(linestyle="--", alpha=0.3)
plt.show()

  

 

posted @ 2018-05-13 15:25  智能先行者  阅读(22812)  评论(0编辑  收藏  举报