разбросать более одного кадра данных на одном графике - PullRequest
0 голосов
/ 13 ноября 2018

Я использую цикл for, чтобы разбрасывать более одного фрейма данных на одном и том же pd.plot.scatterplot, но каждый раз, когда цикл возвращает его, печатается цветная полоса. Как я могу иметь только одну цветную полосу в конце цикла?

Это мой код

if colormap is None: colormap='jet'
f,ax = plt.subplots()
for i, data in enumerate(wells):
    data.plot.scatter(x,y, c=z, colormap=colormap, ax=ax)
ax.set_xlabel(x); ax.set_xlim(xlim)
ax.set_ylabel(y); ax.set_ylim(ylim)
ax.legend()
ax.grid()
ax.set_title(title)

1 Ответ

0 голосов
/ 13 ноября 2018

Этого можно достичь, используя рисунок и добавив оси к одному и тому же подпункту:

import pandas as pd
import numpy as np

# created two dataframes with random values
df1 = pd.DataFrame(np.random.rand(25, 2), columns=['a', 'b'])
df2 = pd.DataFrame(np.random.rand(25, 2), columns=['a', 'b'])

А затем:

fig = plt.figure()
for i, data in enumerate([df1, df2]):
    ax = fig.add_subplot(111)
    ax = data.plot.scatter(x='a', y='b', ax=ax,
                           c='#00FF00' if i == 0 else '#FF0000')

plt.show()

Resulting image with two dataframes plotted in one figure

Вы можете добавлять метки и другие элементы по мере необходимости.

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