diff --git a/python/fbprophet/forecaster.py b/python/fbprophet/forecaster.py index 4c361df..88866ca 100644 --- a/python/fbprophet/forecaster.py +++ b/python/fbprophet/forecaster.py @@ -15,11 +15,15 @@ from copy import deepcopy from datetime import timedelta import logging +logging.basicConfig() logger = logging.getLogger(__name__) -from matplotlib import pyplot as plt -from matplotlib.dates import MonthLocator, num2date -from matplotlib.ticker import FuncFormatter +try: + from matplotlib import pyplot as plt + from matplotlib.dates import MonthLocator, num2date + from matplotlib.ticker import FuncFormatter +except ImportError: + logger.exception('Importing matplotlib failed. Plotting will not work.') import numpy as np import pandas as pd diff --git a/python/setup.py b/python/setup.py index 29275cd..d528ced 100644 --- a/python/setup.py +++ b/python/setup.py @@ -94,6 +94,8 @@ class TestCommand(test_command): sys.modules.update(old_modules) working_set.__init__() +with open('requirements.txt', 'r') as f: + install_requires = f.read().splitlines() setup( name='fbprophet', @@ -106,11 +108,7 @@ setup( packages=['fbprophet', 'fbprophet.tests'], setup_requires=[ ], - install_requires=[ - 'matplotlib', - 'pandas>=0.18.1', - 'pystan>=2.14', - ], + install_requires=install_requires, zip_safe=False, include_package_data=True, # For Python 3, Will enforce that tests are run after a build.