저는 tkinter 창에 그래프를 그리기 위해 matplotlib 모듈을 사용하고 있습니다. AxesSubplot 개체를 사용하여 그래프의 스타일을 구성하고 있습니다.AxesSubplot 객체 (matplotlib & tkinter)를 사용하여 곡선 아래에 색상 추가하기
내 질문은 :이 개체 (AxesSubPlot 개체)와 함께 그래프의 곡선 아래에 색을 그릴 방법은 무엇입니까?
물론def graph_handle(self):
canvas = matplotlib.backends.backend_tkagg.FigureCanvasTkAgg(self.__fig, master=self.__SettingsFrame)
canvas.show()
canvas.get_tk_widget().pack(side=BOTTOM, fill=BOTH, expand=True)
self.__axes = self.__fig.add_subplot(1,1,1,axisbg='#221E1E')
self.__axes.plot([0])
self.__axes.spines['bottom'].set_color('black')
self.__axes.spines['top'].set_color('white')
self.__axes.spines['left'].set_color('#221E1E')
self.__axes.spines['right'].set_color('#221E1E')
self.__axes.xaxis.label.set_color('#221E1E')
self.__axes.tick_params(axis='x', colors='black')
self.__axes.tick_params(axis='y', colors='#221E1E')
self.__fig.gca().clear()
self.__fig.gca().plot([0], [0])
self.__fig.canvas.draw()
내가 코드 및 기타 물건의 Tkinter의 설정이, 당신이 관련이 생각하는 경우에, 코멘트와 나는이 적어 : 이것은 내가 구성하고 그래프를 그리는 데 사용하는 코드입니다 추가 할게.
감사합니다.
편집 : (그냥 데모의 나쁜 도면 죄송합니다) 내가 (곡선과 아래로 축 사이) 곡선 아래에 색상을 추가 할 : 는 지금까지의 코드는이 그래프를 제공합니다 :
Edit2가이 :
이 I가 플롯 어레이가 업데이트 될 때마다 호출 함수 (즉, 더 많은 값이 그 전에 플롯 배열이 있기 때문에 I이 그래프를 갱신 할 때) :
def update_plot(self, txnamount):
self.__GraphPlot[0].append(self.__TransactionsCurrently)
self.__GraphPlot[1].append(self.__WalletBalance+txnamount)
self.__axes.fill_between(self.__GraphPlot[0], self.__GraphPlot[1], facecolor="yellow")
self.__fig.gca().clear()
self.__fig.gca().plot(self.__GraphPlot[0], self.__GraphPlot[1], color="white", linewidth=0.8)
self.__fig.canvas.draw()
작동하지 않습니다. 나는이 함수를 같은 함수에 추가했고 아무 일도 일어나지 않았다. (x, y는 프로그램의 위치 목록이고, 나는 여러분이했던 것처럼 함수에 넣으려고했다. 또한 시도했다 : np.asarray (x), np.asarray (y) 그리고 아직도 아무 일도 일어나지 않았다). 나는 또한 플롯을 업데이트하는 함수에이 줄을 넣으려고 시도했지만 여전히 아무 일도 일어나지 않았다. (위의 내 질문에, 문제가 있는지 확인하기 위해 그래프를 업데이트 배열로 업데이트하는 기능을 추가 할 것이다.) –
축으로 플로팅 한 후에'axes.clear()'를 호출하는 것은 의미가 없습니다. 이렇게하면 새로 추가 된 'fill_between' 플롯이 제거됩니다. – ImportanceOfBeingErnest
맞아, 내가 왜이 줄을 넣었는지 모르겠다 .. 고마워! –