matplotlib绘制条形图(bar、设置不同的颜色、设置每个条形图文字)

本文介绍了一种使用Python的matplotlib库绘制电影票房数据条形图的方法。通过具体示例展示了如何设置字体、颜色等属性,并在每个条形图上方添加了对应的数值标签。
部署运行你感兴趣的模型镜像

代码示例:

'''
绘制电影票房条形图
a = ['流浪地球', '疯狂的外星人','飞驰人生','大黄蜂','熊出没.原始时代','新喜剧之王']
b = ['38.13', '19.85', '14.89', '11.36','6.47','5.93']
'''
import matplotlib.pyplot as plt
import matplotlib.font_manager as fm

a = ['流浪地球', '疯狂的外星人','飞驰人生','大黄蜂','熊出没.原始时代','新喜剧之王']
b = [38.13, 19.85, 14.89, 11.36,6.47,5.93]
plt.figure(figsize=(20,10),dpi=100)
my_font = fm.FontProperties(fname='/System/Library/Fonts/PingFang.ttc',size=10)

#绘制条形图
rects = plt.bar(range(len(a)),b,width=0.3,color=['r','g','b','r','g','b'])
plt.xticks(range(len(a)),a,fontproperties=my_font)
plt.yticks(range(0,41,5),range(0,41,5))

#在条形图上加标注(水平居中)
for rect in rects:
    height = rect.get_height()
    plt.text(rect.get_x()+rect.get_width()/2,height+0.3,str(height),ha='center')
plt.show()

效果截图:

 

您可能感兴趣的与本文相关的镜像

Python3.9

Python3.9

Conda
Python

Python 是一种高级、解释型、通用的编程语言,以其简洁易读的语法而闻名,适用于广泛的应用,包括Web开发、数据分析、人工智能和自动化脚本

以下是使用 `matplotlib` 库绘制条形图的一个完整方法和示例代码: ### 条形图基本概念 条形图是一种常见的可视化工具,用于比较不同类别的数值大小。通过 `matplotlib.pyplot.bar()` 函数可以轻松实现条形图绘制。 ### 示例代码 ```python import matplotlib.pyplot as plt # 定义数据 categories = ['Group A', 'Group B', 'Group C', 'Group D'] values = [10, 24, 36, 40] # 绘制条形图 plt.bar(categories, values, color='green', width=0.5) # 设置图表标题和坐标轴标签 plt.title('Example of a Bar Chart') plt.xlabel('Categories') plt.ylabel('Values') # 显示网格以便更清晰观察数据关系 plt.grid(axis='y', linestyle='--', alpha=0.7) # 展示图形 plt.show() ``` 上述代码展示了如何创建一个简单的条形图[^1]。其中: - 参数 `color` 控制条形颜色; - 参数 `width` 设定条形宽度,默认值为 0.8; - 可选参数如 `bottom`, `align` 和其他样式选项可以根据需求进一步定制[^2]。 如果需要在同一张图上展示多个类别或多组数据,则可以通过调整柱子的位置来避免重叠。例如,在多组条形图的情况下,可采用如下方式处理: ```python import matplotlib.pyplot as plt import numpy as np # 数据准备 groups = ['G1', 'G2', 'G3', 'G4'] group1_data = [10, 20, 30, 40] group2_data = [15, 25, 35, 45] bar_width = 0.35 index = np.arange(len(groups)) # 多组条形图绘制 plt.bar(index, group1_data, bar_width, label='Group 1', color='b') plt.bar(index + bar_width, group2_data, bar_width, label='Group 2', color='orange') # 配置图表细节 plt.title('Multi-group Bar Chart Example') plt.xlabel('Groups') plt.ylabel('Scores') plt.xticks(index + bar_width / 2, groups) plt.legend() # 图表显示 plt.tight_layout() plt.show() ``` 此段代码实现了两组数据并列呈现的效果[^4]。 问题
评论 2
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值