参考资料:

  https://matplotlib.org/stable/api/text_api.html?highlight=text#matplotlib.text.Text

  https://matplotlib.org/stable/gallery/text_labels_and_annotations/font_file.html?highlight=font

  matplotlib默认的字体/字体族是:DejaVu Sans,但是这个东西不是很好看,在论文里我们更多的使用的是Times New Roman或者其他字体。网上有一些教程通过修改matplotlib的某些全局参数来实现对字体的修改,但是这种办法十分笨重不优雅。直接看文档,看看官方让我们怎么做。

  首先,我们用matplotlib时,经常会使用plt进行画图,即诸如plt.plot, plt.scatter,当画完图之后,我们会用plt.title来指定图名,会用plt.xlabel指定坐标轴的标签。那么我们不妨看一看这些函数里有没有字体相关的设置,输入help(plt.title),函数文档如下:

  坏了,好像没有字体相关的参数。别着急,这不还有**kwargs么,这里提示了让我们去找.Text的属性,那么我们就到参考资料一的文档里看一下。果然,我们发现了这些可以使用的参数:

  结合参考资料二给出的信息,我们可以用fontproperties(别名 font, font_properties)这个参数来指定使用的字体。这里需要注意,如果输入是str,它会解释成matplotlib fontpath上的内置字体名称。如果输入是Path,它会解释成真实ttf文件的路径。这里贴一下官网的做法:

  那么我们照葫芦画瓢,首先到Internet上下载免费的ttf文件,更名为TNR.ttf(Times New Roman),然后可以写出如下代码:

from pathlib import Pathplt.figure(dpi=200)
plt.subplot(1, 2, 1)
plt.imshow(img)
plt.xticks([])
plt.yticks([])
plt.title("generated layout", font=Path('TNR.ttf'), size="large")

  这样generated layout就是用Times new Roman字体写的啦。举一反三,以后只要是使用matplotlib画图,需要添加文本的地方,都可以利用Text的属性来指定文本的字体,大小等等。

如何修改matplotlib字体?(matplotlib字体设置)相关推荐

  1. matplotlib绘制图表,设置刻度标签、最大最小刻度、字体大小,label位置、刻度轴箭头等

    matplotlib绘制图表,设置刻度标签.最大最小刻度.字体大小,label位置.刻度轴箭头等 1. 效果图 2. 源码 2.1 仅使用普通轴ax + fontdict 源码 2.2 使用mpl设置 ...

  2. python画图,使用matplotlib和seaborn来设置图形的字体大小,坐标轴的线宽,风格,取值范围

    1. matplotlib 样式的设计 1.1 设置坐标轴的线框 如果我们要设置坐标轴的线宽,我们可以向下面这样做: import matplotlib.pyplot as plt###设置坐标轴的粗 ...

  3. python使用matplotlib可视化、自定义设置Y轴刻度标签字体的大小( setting axis ticks size in matplotlib y axis)

    python使用matplotlib可视化.自定义设置Y轴刻度标签字体的大小( setting axis ticks size in matplotlib y axis) 目录

  4. python中matplotlib自定义设置图像标题使用的字体类型:获取默认的字体族及字体族中对应的字体、自定义设置图像标题使用的字体类型

    python中matplotlib自定义设置图像标题使用的字体类型:获取默认的字体族及字体族中对应的字体.自定义设置图像标题使用的字体类型 目录

  5. 在matplotlib使用中文坐标轴,设置坐标轴,标题字体及字体大小

    1.matplotlib的坐标轴中一般是不支持中文,在windows中要使用中文坐标轴的话,需要调用电脑中的字体. 实现代码: from matplotlib import font_manager# ...

  6. python使用matplotlib可视化、自定义设置X轴刻度标签字体的大小( setting axis ticks size in matplotlib x axis)

    python使用matplotlib可视化.自定义设置X轴刻度标签字体的大小( setting axis ticks size in matplotlib x axis) 目录

  7. Python数据可视化第 2 讲:matplotlib 绘图中文字体设置

    1. 常见报错 Font family ['sans-serif'] not found 1.1 报错现象 在使用 matplotlib 绘图时,中文设置(如 titile.x label.y lab ...

  8. Python - matplotlib库 - 中文字体设置

    Python - matplotlib库 - 中文字体设置 在matplotlib绘制折线图柱状图时,如果对x,y,图表标题,直接使用plot.xlabel("时间"):plot. ...

  9. Matplotlib画图中文字体乱码设置

    Matplotlib画图中文字体乱码设置 Matplotlib画图中文字体乱码设置 一.字体基本设置 二.其他字体: 三.展示一下: 四.运行结果: Matplotlib画图中文字体乱码设置 一.字体 ...

  10. Ubuntu下让matplotlib显示中文字体

    文章目录 安装中文字体 显示matplotlib库的字体文件夹 删除matplotlib 的缓存文件(可选) matplotlib中设置字体,显示! 参考文章: https://zodiac911.g ...

最新文章

  1. php mysql备份代码_PHP备份/还原MySQL数据库的代码
  2. VMware中装Win2012并配置Hyper-v
  3. 《数据科学R语言实践:面向计算推理与问题求解的案例研究法》一一2.3 数据清洗和变量格式化...
  4. Web框架——Flask系列之宏、继承、包含(十八)
  5. 1.7编程基础之字符串
  6. 蓝桥杯 ADV-130 算法提高 色盲的民主
  7. python123.io简单编程题合集
  8. 代码流程图_助力理解js代码,进阶JavaScript代码能力——js2flowchart
  9. 【Python】:拓展Queue实现有序不重复队列
  10. SublimeText 3 高亮 MATLAB语法
  11. 北海焊接机器人_北海中型机械手臂生产,机械手
  12. id导出pdf失败_indesign导出pdf失败怎么办
  13. 微信服务号开发说明:测试号申请、自定义菜单添加第三方连接
  14. 美团服务器不稳定号码保护,美团外卖怎么开启号码保护 隐藏自己手机号这么设置...
  15. react-cropper + antdesign +dva 实现裁剪图片并上传的功能
  16. 淘宝怎么选品技巧秘籍,做淘宝7分靠选货品
  17. 物联网平台的开发目标以及技术架构
  18. JAVA使用jacob判断word附件是否加密
  19. 局域网助手_WiFi换机助手下载-WiFi换机助手v1.0.3下载
  20. 将单向链表按某值划分成左边小、中间相等、右边大的形式

热门文章

  1. MySQL数据库和SQL语句
  2. 微信小程序增加悬浮在线客服
  3. 低成本打造私人家庭网盘/下载服务器/打印服务器 - 前言
  4. iOS之iPhone解锁界面的滑动来解锁闪烁动画效果
  5. 基于 Milvus 的 VOVA 拍照购实践
  6. 【linux系统配置 3】ubuntu1604-搜狗拼音安装指南
  7. 电信新套路?为推广5G或将限制4G网速,网友:网速早就变慢了
  8. HTML5另类塔防游戏 -《三国战线》公布
  9. 关于申请账户证明信该如何操作
  10. 【Linux】Linux中的环境变量及其意义