better parameter checking
example plot