Another package for making plots is seaborn (tutorial here). Seaborn is built on top of matplotlib and basically can make fairly complicated plots easily. However, if you want a lot of control then you have to go back to the matplotlib commands. Seaborn is imported with the nickname sns.
import seaborn as sns
Seaborn has good integration with panda dataframes and we will use a dataframe for the examples below. We will use a data set of exoplanet measurements that is included with seaborn. Seaborn organizes plots largely into three types relational, distribution and categorical. Each of these plots can be made in two ways, either by calling the plot type and giving the kind of plot you want, or by using a function for that specific plot. The functions that make a specific plot are called axes-like functions because they can be run on an instance of a matplotlib axis. Here is an example of how to make relational type plots, a scatter and a line plot, using both methods.
df=sns.load_dataset('planets')
sns.relplot(data=df, x='distance', y='mass', hue='year', kind='scatter')
sns.scatterplot(data=df, x='distance', y='mass',size='year')
sns.relplot(data=df, x='year', y='distance', kind='line') #figure-like
sns.lineplot(data=df, x='year', y='distance') #axis-like