Як отримати екземпляр matplotlib Axes для побудови графіку?


83

Мені потрібно скласти діаграму свічників (щось на зразок цього), використовуючи деякі дані про запаси. Для цього я хочу використовувати функцію matplotlib.finance.candlestick () . Для цієї функції мені потрібно надати лапки та " екземпляр осей для побудови графіку ". Я створив кілька зразків цитат наступним чином:

quotes = [(1, 5, 6, 7, 4), (2, 6, 9, 9, 6), (3, 9, 8, 10, 8), (4, 8, 8, 9, 8), (5, 8, 11, 13, 7)]

Зараз мені також потрібен екземпляр Axes, в якому я трохи загубився. Я створив графіки перед використанням matplotlib.pyplot. Я думаю, що мені зараз потрібно щось зробити з matplotlib.axes , але я не впевнений, що саме.

Хтось може мені трохи тут допомогти? Всі поради вітаються!

Відповіді:


170

Використовуйте gcaдопоміжну функцію ("отримати поточні осі"):

ax = plt.gca()

Приклад:

import matplotlib.pyplot as plt
import matplotlib.finance
quotes = [(1, 5, 6, 7, 4), (2, 6, 9, 9, 6), (3, 9, 8, 10, 8), (4, 8, 8, 9, 8), (5, 8, 11, 13, 7)]
ax = plt.gca()
h = matplotlib.finance.candlestick(ax, quotes)
plt.show()

введіть тут опис зображення


14

Ви можете будь-який

fig, ax = plt.subplots()  #create figure and axes
candlestick(ax, quotes, ...)

або

candlestick(plt.gca(), quotes) #get the axis when calling the function

Перший забезпечує більшу гнучкість. Друге набагато простіше, якщо свічник - це єдине, що ви хочете побудувати

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.