Matplotlib Switch X и Y Ось - PullRequest
       8

Matplotlib Switch X и Y Ось

0 голосов
/ 27 июня 2018

У меня, казалось бы, простой вопрос, который я не могу понять. Код ниже продукты на графике ниже.

df = pd.DataFrame({.5:[0,0,0], .6:[1,2,1], .7:[7,8,6], .8:[23,33,21], .9: 
[84,126,76] }, index=['Desktop', 'Mobile', 'Table'])
df.T.plot(figsize=(10,10))

enter image description here

Это почти то, что я хочу, но мне нужен процентиль на оси Y и дни на оси X. Спасибо за помощь.

1 Ответ

0 голосов
/ 27 июня 2018

Вам нужно очистить ваши данные в формате tidy , затем указать свои оси matplotlib и значения x- & y- явно:

from matplotlib import pyplot
import pandas

df = pandas.DataFrame({
    0.5: [0, 0, 0],
    0.6: [1, 2, 1],
    0.7: [7, 8, 6],
    0.8: [23, 33, 21],
    0.9: [84, 126, 76]
}, index=['Desktop', 'Mobile', 'Tablet'])

fig, ax = pyplot.subplots()
groups = (
    df.T
      .stack()
      .rename_axis(['pctile', 'device'])
      .to_frame('days')
      .reset_index()
      .groupby(by=['device'])
)
for device, g in groups:
    g.plot.line(ax=ax, x='days', y='pctile', label=device)

enter image description here

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...