added matplotlib requirement