make plot more flexible, takes and returns and axis.
somewhat messing mix of custom and default value functions.