Предположим, у меня есть следующий код, который строит что-то очень простое с помощью панд:
import pandas as pd
values = [[1, 2], [2, 5]]
df2 = pd.DataFrame(values, columns=['Type A', 'Type B'],
index=['Index 1', 'Index 2'])
df2.plot(lw=2, colormap='jet', marker='.', markersize=10,
title='Video streaming dropout by category')
Как мне легко установить x и y-метки, сохраняя при этом мою способность использовать определенные цветовые карты? Я заметил, что plot()
обертка для панд DataFrames не принимает никаких параметров, специфичных для этого.
python
pandas
dataframe
matplotlib
Эверальдо Агиар
источник
источник
pd.plot()
? Учитывая дополнительная краткость вpd.plot()
течениеplt.plot()
, кажется , было бы целесообразно , чтобы сделать его еще более емким , вместо того , чтобы звонитьax.set_ylabel()
.ax.set_ylabel("y label")
, он возвращает ошибку'list' object is not callable
. Любая идея?ax.axes.set_ylabel("y label")
.ax.set(xlabel='...)
выше в этом ответе, так как это может быть пропущено за графиком. Это действительно самый краткий подход для установки обеих осей, который является обычным вариантом использования.Вы можете использовать сделать это так:
Очевидно, вы должны заменить строки «xlabel» и «ylabel» тем, что вы хотите, чтобы они были.
источник
plt.xlabel()
и т. Д. Послеdf.plot()
, а не раньше, потому что в противном случае вы получите два графика - вызовы изменят «предыдущий» график. То же самое и дляplt.title()
.Если вы пометите столбцы и индекс вашего DataFrame, pandas автоматически предоставит соответствующие метки:
В этом случае вам все равно придется вводить y-метки вручную (например, через,
plt.ylabel
как показано в других ответах).источник
Можно установить обе метки вместе с
axis.set
функцией. Посмотрите на пример:источник
.set(xlabel='x axis', ylabel='y axis')
решение, потому что оно позволяет мне поместить все это в одну строку, в отличие от методов построения set_xlabel и set_ylabel. Интересно, почему они все (включая метод set, между прочим) не возвращают объект plot или, по крайней мере, что-то унаследованное от него.Для случаев, когда вы используете
pandas.DataFrame.hist
:Обратите внимание, что вы получаете массив графиков, а не график. Таким образом, чтобы установить метку х, вам нужно сделать что-то вроде этого
источник
что о ...
источник
pandas
используетmatplotlib
для основных графиков данных. Таким образом, если вы используетеpandas
базовый график, вы можете использовать matplotlib для настройки графика. Тем не менее, я предлагаю здесь альтернативный метод,seaborn
который позволяет больше настраивать сюжет, не вдаваясь в базовый уровеньmatplotlib
.Рабочий код:
источник