Оси графика не отображаются правильно в Python - PullRequest
0 голосов
/ 09 декабря 2018

Я пытаюсь создать 2x2 графики в Python и борется с осями.Это то, что я получаю до сих пор - оси на каждом участке построены неправильно.

enter image description here

Это мой код:

def plotCarBar(df):
    fig = plt.figure()
    j = 1
    for i in pandaDF.columns[15:18]:
        cat_count = df.groupby(i)[i].count().sort_values().plot(figsize= 12,12), kind = 'line')
        ax = fig.add_subplot(2, 2, j)
        j += 1
    return ax.plot(lw = 1.3)

plotCarBar(pandaDF)

Может кто-нибудь помочь, пожалуйста?Заранее спасибо!

1 Ответ

0 голосов
/ 09 декабря 2018

Я не уверен, что вам нужны две петли.Если вы опубликуете некоторые образцы данных, мы сможем лучше понять, что делает ваша строка cat_count.В нынешнем виде я не уверен, что вам нужны два счетчика (i и j).

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

Итак, что-то вроде этого может сработать:

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

randoms = np.random.rand(10, 4) # generate some data
print(randoms)

fig = plt.figure()

for i in range(1, randoms.shape[1] + 1): # number of cols
    ax = fig.add_subplot(2, 2, i)
    ax.plot(randoms[i, :])
plt.show()

Вывод:

[[0.78436298 0.85009767 0.28524816 0.28137471]
 [0.58936976 0.00614068 0.25312449 0.58549765]
 [0.24216048 0.13100618 0.76956316 0.66210005]
 [0.95156085 0.86171181 0.40940887 0.47077143]
 [0.91523306 0.33833055 0.74360696 0.2322519 ]
 [0.68563804 0.69825892 0.5836696  0.97711073]
 [0.62709986 0.44308186 0.24582971 0.97697002]
 [0.04356271 0.01488111 0.73322443 0.04890864]
 [0.9090653  0.25895051 0.73163902 0.83620635]
 [0.51622846 0.6735348  0.20570992 0.13803589]]

matplotlib plot

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