<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def barplot(self, canvas, x, height, width=0.8, bottom=0, color=None, label=None, **kwargs):
 """ Plot vertical bar plot centered at x with height and width of bars. The y level is at bottom. the kwargs are plotting library specific kwargs! :param array-like x: the center points of the bars :param array-like height: the height of the bars :param array-like width: the width of the bars :param array-like bottom: the start y level of the bars :param kwargs: kwargs for the specific library you are using. """

        raise NotImplementedError("Implement all plot functions in AbstractPlottingLibrary in order to use your own plotting library")