networkx scikit-learn pandas numpy matplotlib pillow