Pandas DataFrame Bar Plot.

Table Of Contents:

  1. Syntax ‘plot.bar( )’ Method In Pandas.
  2. Examples ‘plot.bar( )’ Method.

(1) Syntax:

DataFrame.plot.area(x=None, y=None, **kwargs)

Description:

  • Vertical bar plot.

  • A bar plot is a plot that presents categorical data with rectangular bars with lengths proportional to the values that they represent.

  • A bar plot shows comparisons among discrete categories. One axis of the plot shows the specific categories being compared, and the other axis represents a measured value.

Parameters:

  • x: label or position, optional – Allows plotting of one column versus another. If not specified, the index of the DataFrame is used.
  • y: label or position, optional – 

    Allows plotting of one column versus another. If not specified, all numerical columns are used.

  • color: str, array-like, or dict, optional – The color for each of the DataFrame’s columns. Possible values are:

    • A single color string referred to by name, RGB or RGBA code,

      for instance ‘red’ or ‘#a98d19’.

    • A sequence of color strings referred to by name, RGB or RGBA

      code, which will be used for each column recursively. For instance [‘green’,’yellow’] each column’s bar will be filled in green or yellow, alternatively. If there is only a single column to be plotted, then only the first color from the color list will be used.

    • A dict of the form {column namecolor}, so that each column will be

      colored accordingly. For example, if your columns are called a and b, then passing {‘a’: ‘green’, ‘b’: ‘red’} will color bars for column a in green and bars for column b in red.

       

  • **kwargs – Additional keyword arguments are documented in DataFrame.plot().

Returns

  • matplotlib.axes.Axes or np.ndarray of them – An ndarray is returned with one matplotlib.axes.Axes per column when subplots=True.

(2) Examples Of plot.bar() Method:

Example-1:

df = pd.DataFrame({'lab':['A', 'B', 'C'], 'val':[10, 30, 20]})
df

Output:

ax = df.plot.bar(x='lab', y='val', rot=0)

Output:

# Plot a whole dataframe to a bar plot. Each column is assigned a distinct color, and each row is nested in a group along the horizontal axis.

speed = [0.1, 17.5, 40, 48, 52, 69, 88]
lifespan = [2, 8, 70, 1.5, 25, 12, 28]
index = ['snail', 'pig', 'elephant',
         'rabbit', 'giraffe', 'coyote', 'horse']
df = pd.DataFrame({'speed': speed,
                   'lifespan': lifespan}, index=index)
df

Output:

# Bar Plot

ax = df.plot.bar(rot=0)

Output:

# Plot stacked bar charts for the DataFrame

ax = df.plot.bar(stacked=True)

Output:

# Instead of nesting, the figure can be split by column with subplots=True. In this case, a numpy.ndarray of matplotlib.axes.Axes are returned.

axes = df.plot.bar(rot=0, subplots=True)
axes[1].legend(loc=2) 

Output:

# If you don’t like the default colours, you can specify how you’d like each column to be colored.

axes = df.plot.bar(
    rot=0, subplots=True, color={"speed": "red", "lifespan": "green"}
)
axes[1].legend(loc=2)

Output:

# Plot a single column.

ax = df.plot.bar(y='speed', rot=0)

Output:

# Plot only selected categories for the DataFrame.

ax = df.plot.bar(x='lifespan', rot=0)

Output:

Leave a Reply

Your email address will not be published. Required fields are marked *