首页 > Python资料 博客日记
python—matplotlib库系列学习(二):bar函数(包含xticks、yticks、savefig函数)
2024-06-30 12:00:04Python资料围观203次
系列文章目录
python—matplotlib库系列学习(一):plot函数(包含title、xlabel、ylabel、legend函数)_plt函数-CSDN博客
目录
引言
由于考研,我们这个系列也好久没有更新了呜呜呜,但是之后我会继续加油嘟!同样在下面附上我参考学习的网站,大家也可以自行学习~
bar函数
(1)简单的举例说明
import matplotlib.pyplot as plt
plt.rcParams['font.sans-serif']=['SimHei'] #显示文字
# 准备数据
x = ['A', 'B', 'C', 'D']
y = [10, 5, 7, 3]
# 绘制柱状图
plt.bar(x, y)
# 设置标题和坐标轴标签
plt.title('简单的柱状图')
plt.xlabel('x轴')
plt.ylabel('y轴')
# 展示图表
plt.show()
(2)参数说明
#下面是说明文档给出的参数
matplotlib.pyplot.bar(x, height, width=0.8, bottom=None, *, align='center', data=None, **kwargs)
# height:条形图的高度
# width:条形图的宽度,默认值为0.8
# bottom:条形图底部的y坐标,默认值为0(就是y轴从几开始)
# align:条形图与x坐标的对齐方式。 有'center'、'edge' 默认值:'center'
# **kwargs 指的是使用其他关键字参数作为文本属性
我们把上面的一些基本参数使用一下,举例如下ʕ•ᴥ•ʔ:
import matplotlib.pyplot as plt
plt.rcParams['font.sans-serif']=['SimHei']
# 准备数据
x = ['A', 'B', 'C', 'D']
# 绘制柱状图
plt.bar(x , height=10 , width=0.5, bottom=100 , align='edge')
# 设置标题和坐标轴标签
plt.title('简单的柱状图')
plt.xlabel('x轴')
plt.ylabel('y轴')
# 展示图表
plt.show()
我们可以看到y轴是从100开始的(bottom参数),并且实现了x轴坐标的左对齐(align参数),以及对宽度和高度的调整。
注意:如果我们想实现x轴坐标的右对齐,需要设置一个负的宽度(width参数),举例如下:
import matplotlib.pyplot as plt
plt.rcParams['font.sans-serif']=['SimHei']
# 准备数据
x = ['A', 'B', 'C', 'D']
# 绘制柱状图
plt.bar(x , height=233 , width=-0.8, bottom=114514 , align='edge')
# 设置标题和坐标轴标签
plt.title('简单的柱状图')
plt.xlabel('x轴')
plt.ylabel('y轴')
# 展示图表
plt.show()
除了上述的基本参数外,当然还有一些其他的参数,就不挨个举例子啦o(´^`)o,但我会列在下面,大家有需要自取就好。只列举了一部分,完整请自行访问~
Property | Description |
---|---|
color | 柱面颜色 |
edgecolor | 柱边框的颜色 |
linewidth | 条形边缘的宽度,如果为0,则不绘制边缘 |
tick_label | 柱线的刻度标签 |
label | 标签 |
hatch | 柱形填充符号:{'/', '\', '|', '-', '+', 'x', 'o', 'O', '.', '*'} |
log | 如果为True,则将y轴设置为对数刻度 |
举例如下:
import matplotlib.pyplot as plt
plt.rcParams['font.sans-serif']=['SimHei']
# 准备数据
x = ["a","b","c","d"]
# 绘制柱状图
plt.bar(x , height=20 , width=0.3, bottom=10 , align='edge'
, color="#00CED1" , hatch='/' , edgecolor="black" ,
linewidth="5")
# 设置标题和坐标轴标签
plt.title('简单的柱状图')
plt.xlabel('x轴')
plt.ylabel('y轴')
# 展示图表
plt.show()
在结合之前学习的内容完善一下:
import matplotlib.pyplot as plt
fruits = ['apple', 'blueberry', 'cherry', 'orange']
counts = [40, 100, 30, 55]
bar_colors = ['red', 'blue', 'green', 'orange']
#绘制柱状
plt.bar(fruits, counts, color=bar_colors)
#给y轴命名
plt.ylabel('fruit supply')
#添加标题
plt.title('Fruit')
#展示图形
plt.show()
通用的图形美化
1. xticks、yticks函数
获取或设置x,y轴的当前刻度位置和标签,它们的参数如下:
matplotlib.pyplot.xticks(ticks=None, labels=None, *, minor=False, **kwargs)
# ticks X轴刻度间隔
# labels 每个间隔的显示标签
# minor 如果设置成False,获取/设置主要刻度/标签;如果设置成True,获取/设置次要刻度/标签
# **kwargs 指的是使用其他关键字参数作为文本属性
其中yticks和上面xticks是一个道理,举个栗子:
import matplotlib.pyplot as plt
#柱体的标签
labels = ['A', 'B', 'C', 'D', 'E']
#柱体的高度
values = [10, 15, 7, 12, 9]
#柱体的索引
x = range(len(labels))
#绘制柱状图
plt.bar(x, values)
#设置x轴标签和刻度
plt.xticks(x, labels)
#设置y轴刻度范围
plt.yticks(range(0, max(values) + 6, 5))
#添加柱体高度的数值标注
for i, value in enumerate(values):
plt.text(i, value + 0.5, str(value), ha='center')
#添加x轴和y轴标签
plt.xlabel('Category')
plt.ylabel('Value')
#添加标题
plt.title('Bar Chart')
#显示图表
plt.show()
2. savefig函数(保存当前的图片)
savefig(fname, *, transparent=None, dpi='figure', format=None,
metadata=None, bbox_inches=None, pad_inches=0.1,
facecolor='auto', edgecolor='auto', backend=None,
**kwargs
)
fname | 输出文件的名称。字符串、类路径对象或类二进制对象,必备参数 (1)如果设置了format参数,文件按照format参数格式输出,文件名为fname。注意,如果文件名不会再追加format参数对应的扩展名或更改fname中的扩展名。因此可能出现文件扩展名与实际输出格式不一致的情况 (2)如果没有设置format参数,当fname中包含扩展名时,会直接直接使用扩展名对应的格式输出(注意,扩展名如果不是支持的格式,将会抛出异常),当fname中不包含扩展名时,会直接按rcParams["savefig.format"]值(默认为png)输出,并将扩展名追加至fname |
transparent | 如果为True,轴线补丁都将是透明的;除非通过 kwargs 指定了面色、边色,否则图形补丁也将是透明的 如果设置为False则没有影响,轴线和图形补丁的颜色保持不变(除非通过关键字参数指定了图形补丁,否则将使用这些颜色) 退出此函数后,这些补丁的透明度将恢复为原始值 |
dpi | 输出图像的分辨率(每英寸的像素点数),如果是 “figure”,则使用“figure”的dpi值 |
format | 文件格式,例如 "png"、"pdf"、"svg"等,未设置时的行为记录在 fname 下 |
metadata | 用于存储图像元数据的键值对 |
bbox_inches | 以英寸为单位的边界框:只保存图形的给定部分。如果为“tight”,则尝试找出图形的紧边界框。 |
pad_inches | 当 bbox_inches 为“tight”时,图形周围以英寸为单位的填充量 |
facecolor | 图片的背景颜色,若为“auto”,则使用当前的背景颜色 |
edgecolor | 图片的边框颜色,若为“auto”,则使用当前的边框颜色 |
backend | 使用非默认后端来渲染文件 |
举个例子:
import matplotlib.pyplot as plt
import numpy as np
x = np.arange(14)
y = np.sin(x / 2)
plt.step(x, y + 2, label='pre (default)')
plt.plot(x, y + 2, 'o--', color='grey', alpha=0.3)
plt.step(x, y + 1, where='mid', label='mid')
plt.plot(x, y + 1, 'o--', color='grey', alpha=0.3)
plt.step(x, y, where='post', label='post')
plt.plot(x, y, 'o--', color='grey', alpha=0.3)
plt.grid(axis='x', color='0.95')
plt.legend(title='Parameter where:')
plt.title('plt.step(where=...)')
plt.show()
plt.savefig("save the picture.png", dpi=300)#!!!!!!!!!!!!!!!!
图形就被保存在下面了~ 然后再电脑里去找这个图片所在的文件夹就可以辣~
总结
我写的文章更多是面向萌新小白的(ps.因为画的图都比较简单hahahaha)
当然,上述的学习还有很多函数可以完善我们的图形,我们留在下一次的文章进行说明,并且会讲一个新的图形函数。
希望大家发现问题可以及时指出,我也是在不断学习进步中~~~ 谢谢大家的观看,如果帮到了你还请点个赞~
标签:
相关文章
最新发布
- 光流法结合深度学习神经网络的原理及应用(完整代码都有Python opencv)
- Python 图像处理进阶:特征提取与图像分类
- 大数据可视化分析-基于python的电影数据分析及可视化系统_9532dr50
- 【Python】入门(运算、输出、数据类型)
- 【Python】第一弹---解锁编程新世界:深入理解计算机基础与Python入门指南
- 华为OD机试E卷 --第k个排列 --24年OD统一考试(Java & JS & Python & C & C++)
- Python已安装包在import时报错未找到的解决方法
- 【Python】自动化神器PyAutoGUI —告别手动操作,一键模拟鼠标键盘,玩转微信及各种软件自动化
- Pycharm连接SQL Sever(详细教程)
- Python编程练习题及解析(49题)
点击排行
- 版本匹配指南:Numpy版本和Python版本的对应关系
- 版本匹配指南:PyTorch版本、torchvision 版本和Python版本的对应关系
- Python 可视化 web 神器:streamlit、Gradio、dash、nicegui;低代码 Python Web 框架:PyWebIO
- 相关性分析——Pearson相关系数+热力图(附data和Python完整代码)
- Anaconda版本和Python版本对应关系(持续更新...)
- Python与PyTorch的版本对应
- Windows上安装 Python 环境并配置环境变量 (超详细教程)
- Python pyinstaller打包exe最完整教程