Considering area plot, it can't be moved to ahead of `plotf`. At the timing `plotf` called, `y_value` stores the y-coodinates of line, and `_pos_prior` or  `_neg_prior` stores starting points of area filling. Thus, changing `_pos_prior` or `_neg_prior` must be done after `plotf` called.

And condition is not equivalent as `(if y_values >= 0).all() and not self.subplots`. The starting point should not be increased when stacking is disabled. 

Regarding `else` section, it can be removed (I included to note that it cannot occur though)