Recipe: How to generate BAR plot using pandas DataFrame?
DATA VISUALIZATION PANDAS CHEATSHEET

How to generate BAR plot using pandas DataFrame?

This recipe helps you generate BAR plot using pandas DataFrame
In [2]:
## How to generate BAR plot using pandas DataFrame
def Snippet_113():
    print()
    print(format('How to use timeseries using pandas DataFrame','*^82'))
    import warnings
    warnings.filterwarnings("ignore")

    # load libraries
    import pandas as pd
    import matplotlib.pyplot as plt
    import numpy as np

    # Create dataframe
    raw_data = {'first_name': ['Jason', 'Molly', 'Tina', 'Jake', 'Amy'],
                'pre_score': [4, 24, 31, 2, 3],
                'mid_score': [25, 94, 57, 62, 70],
                'post_score': [5, 43, 23, 23, 51]}
    df = pd.DataFrame(raw_data, columns = ['first_name', 'pre_score', 'mid_score',
                                           'post_score'])
    print(); print(df)

    # input data, specifically the second and third rows, skipping the first column
    Molly = df.ix[1, 1:]
    Tina = df.ix[2, 1:]

    # Create the bar labels
    bar_labels = ['Pre Score', 'Mid Score', 'Post Score']

    # Create a figure
    plt.figure(figsize=(8,6))

    # Set the y position
    y_pos = np.arange(len(Molly))
    y_pos = [x for x in y_pos]
    plt.yticks(y_pos, bar_labels, fontsize=10)

    # Create a horizontal bar in the position y_pos
    plt.barh(y_pos, Molly, align='center', alpha=0.4, color='#263F13')
    plt.barh(y_pos, -Tina, align='center', alpha=0.4, color='#77A61D')

    # annotation and labels
    plt.xlabel('Tina\'s Score: Light Green. Molly\'s Score: Dark Green')
    plt.title('Comparison of Molly and Tina\'s Score')
    plt.ylim([-1,len(Molly)+0.1])
    plt.xlim([-max(Tina)-10, max(Tina)+10])
    plt.grid(); plt.show()

Snippet_113()
*******************How to use timeseries using pandas DataFrame*******************

  first_name  pre_score  mid_score  post_score
0      Jason          4         25           5
1      Molly         24         94          43
2       Tina         31         57          23
3       Jake          2         62          23
4        Amy          3         70          51


Stuck at work?
Can't find the recipe you are looking for. Let us know and we will find an expert to create the recipe for you. Click here
Companies using this Recipe
1 developer from Vodafone
1 developer from ANAC
1 developer from HvH
1 developer from ICU Medical