Open sugarijoo opened 3 years ago
우선 제 PC에서는 아래 코드가 정상적으로 돌아가는 것을 확인했습니다. https://github.com/INVESTAR/StockAnalysisInPython/blob/master/07_Django_and_Automation/ch07_08_Backtrader_RSI.py
보내주신 에러 메시지만 봐서는 정확한 파악이 어려우나 저도 예전에 날짜 데이터 자료형이 맞지 않을 때 matplotlib에서 plot()을 못했던 기억이 어렴풋이 납니다. https://jsp-dev.tistory.com/104
Anaconda로 설치했을 때 워낙 설치되는 라이브러리가 많다보니 내부적으로 한 번 꼬이면 바로잡기가 힘든 문제점이 있습니다. 만일 날짜 데이터 문제가 아니라면 matplotlib만이라도 제거했다가 다시 설치해 보시기 바랍니다.
답변 감사드립니다.
에러 메세지의 맨 아래 부분이 의심이 되서 "c:\Anaconda3\lib\site-packages\backtrader\plot\locator.py" 의 35 line에 찾아가서 아래와 같이 warings을 포함을 안시키니 정상적으로 그래프 출력이 됩니다.
[Before] from matplotlib.dates import (HOURS_PER_DAY, MIN_PER_HOUR, SEC_PER_MIN, MONTHS_PER_YEAR, DAYS_PER_WEEK, SEC_PER_HOUR, SEC_PER_DAY, num2date, rrulewrapper, YearLocator, MicrosecondLocator, warnings)
[After] from matplotlib.dates import (HOURS_PER_DAY, MIN_PER_HOUR, SEC_PER_MIN, MONTHS_PER_YEAR, DAYS_PER_WEEK, SEC_PER_HOUR, SEC_PER_DAY, num2date, rrulewrapper, YearLocator, MicrosecondLocator) #, warnings) #으로 warings부분 제외시킴
정확한 이유는 모르겠지만 제가 가진 클라우드 PC에서도 동일한 현상이 확인되었습니다. backtrader 최신 버전(1.9.76.123)에서 뭔가 형상 변화가 있었던 것 같습니다. lib\site-packages\backtrader\plot\locator.py의 35번째 줄의 warnings를 제거하니 plot이 가능하네요.
matplotlib가 버전이 높아서 그럴 수 있다는 첩보가.. 버전을 낮춰서 시도해보시기 바랍니다.^^
pip uninstall matplotlib # or conda pip install matplotlib==3.2.2
실행은 잘 되는 듯한데... 마지막에 그림이 plot이 안되는 것 같습니다.