def warn(message, category=PsyPlotWarning, logger=None):
    """wrapper around the warnings.warn function for non-critical warnings.
    logger may be a logging.Logger instance"""
    if logger is not None:
        message = "[Warning by %s]\n%s" % (logger.name, message)
    warnings.warn(message, category, stacklevel=3)