Home >Backend Development >Python Tutorial >How to Add Data Values to Horizontal Bars in a Matplotlib Bar Plot?

How to Add Data Values to Horizontal Bars in a Matplotlib Bar Plot?

Linda Hamilton
Linda HamiltonOriginal
2024-11-24 03:08:16234browse

How to Add Data Values to Horizontal Bars in a Matplotlib Bar Plot?

Adding Values to Horizontal Bars in Matplotlib

Bar plots are a valuable tool for visualizing data and identifying patterns. To enhance plot clarity, it is often helpful to display the exact values of each bar directly on the graph. This can provide a convenient reference for interpretation and analysis.

In matplotlib, creating a horizontal bar plot is straightforward. The following code snippet generates a bar plot that represents the frequency of different categories:

import matplotlib.pyplot as plt
import numpy as np

# Data for the plot
x = [u'INFO', u'CUISINE', u'TYPE_OF_PLACE', u'DRINK', u'PLACE', u'MEAL_TIME', u'DISH', u'NEIGHBOURHOOD']
y = [160, 167, 137, 18, 120, 36, 155, 130]

# Create the bar plot
fig, ax = plt.subplots()
width = 0.75  # Bar width
ind = np.arange(len(y))  # X locations for groups

ax.barh(ind, y, width, color="blue")
ax.set_yticks(ind + width / 2)
ax.set_yticklabels(x, minor=False)
plt.title('Bar Plot')
plt.xlabel('Frequency')
plt.ylabel('Category')

However, the plot lacks the values on the bars. To add the values, you can extend the code with the following lines:

# Add bar values
for i, v in enumerate(y):
    ax.text(v + 3, i, str(v), color='blue', fontweight='bold', verticalalignment='center')

This code iterates over the y-values and adds the string representation of each value to the plot. The ax.text method positions the text at a specified x-location (v 3) and y-location (i) in the coordinate system of the plot.

The resulting plot will have the values displayed on each bar, allowing for quick and easy interpretation of the data:

[Image of bar plot with values]

This enhancement greatly improves the usability of the plot and allows viewers to quickly grasp the specific values represented by each bar.

The above is the detailed content of How to Add Data Values to Horizontal Bars in a Matplotlib Bar Plot?. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn