Всем привет.
Пытаюсь изучать язык Python + библиотеку Matplotlib и на данный момент я застрял с некоторыми моментами:
https://i.stack.imgur.com/qFz7e.png
Первый:
Я не знаю, как я могу удалить (в окне), нотации (axex: х,Y и их координаты) которые видно на скрине?
Второй:
Я хотел бы знать — могу ли я установить полосу прокрутки на любом графике? Я имею в виду, мне нужна фиксированная Ширина на графике и если содержание (какое-то количество точек или японские свечи) внутри него будут расти(по ширине) — мне нужно появление полосы прокрутки с низу чарта.
Это можно реализовать на нейтивном Python + matplotlib? (без wx Python, tkinter и т.д. и т.п.)
P. S. Буду признателен за любые конструктивные советы.
Что касается полосы прокрутки, то ее можно сделать при помощи виджета «Slider», но это будет не совсем просто.
Попробуйте вот такой пример:
from matplotlib.widgets import Slider import math import matplotlib.pyplot as plt fig, ax = plt.subplots() plt.subplots_adjust(left=0.25, bottom=0.25) t = [i / 100. for i in range(0, int(math.pi) * 100, 1)] s = [math.sin(i * 20) for i in t] l, = plt.plot(t, s, lw=2, color='red') plt.axis([0, 1, -10, 10]) axcolor = 'gray' ax_x_pos = plt.axes([0.25, 0.1, 0.65, 0.03], axisbg=axcolor) wsize = 10 x_pos = Slider(ax_x_pos, 'Position', 0, len(t) - wsize - 1, valfmt='%d', valinit=0) ax.set_xlim(t[0], t[wsize]) ax.set_ylim(-1.1, 1.1) def update(val): print(x_pos.val) pos = int(x_pos.val) ax.set_xlim(t[pos], t[pos + wsize]) fig.canvas.draw_idle() x_pos.on_changed(update) plt.show()
Чтобы убрать отображение координат, необходимо заменить функцию вывода на «пустышку»:
import matplotlib.pyplot as plt plt.figure(1) plt.plot([1, 2, 3]) plt.gca().format_coord = lambda x, y: '' plt.show()