iis服务器助手广告广告
返回顶部
首页 > 资讯 > 后端开发 > Python >Python画图时如何调用本地字体
  • 896
分享到

Python画图时如何调用本地字体

2024-04-02 19:04:59 896人浏览 独家记忆

Python 官方文档:入门教程 => 点击学习

摘要

matplotlib中的字体文件被封装在font_manager这个子模块中,fontManager.ttflist这个列表涵盖了所有Matplotlib支持的字体。 >&

matplotlib中的字体文件被封装在font_manager这个子模块中,fontManager.ttflist这个列表涵盖了所有Matplotlib支持的字体。


>>> import matplotlib.pyplot as plt
>>> from matplotlib.font_manager import fontManager
>>> print(fontManager.ttflist[0])   #此为字体文件
<Font 'cmmi10' (cmmi10.ttf) nORMal normal 400 normal>

Font类中主要有7个基本属性:

‘fname' ‘name' ‘size' ‘stretch' ‘style' ‘variant' ‘weight'
存储路径 字体名 尺寸 拉伸方式 斜粗风格 变体 粗细

若想全局设置字体,可通过更改plt.rcParams来实现,例如设为等线字体


plt.rcParams['font.sans-serif'] = 'DengXian'
plt.text(0,0,'测试',fontsize=20)
plt.show()

效果为

一般来说电脑中内置的字体文件都是数百记,很难逐一展示,所以接下来希望将前100个字体展示在一张图中。

然而rcParams对于并非坐标轴的属性,而是当前作图窗格的属性,若想在局部启用其他字体,可通过plt.text中的fontproperties参数来实现


import numpy as np
from matplotlib.font_manager import FontProperties
x,y  = np.indices([10,10]).reshape(2,100)/10
for i in range(100):
    font = fontManager.ttflist[i]
    plt.text(x[i],y[i],f"测试:{font.name}", 
    fontsize=10, ha='left', va='bottom',
    fontproperties = FontProperties(fname=font.fname))

plt.show()

得到测试字体如图所示

在作图时选择其中支持中文的字体,就不会出现中文乱码问题了。

补充

python实现绘图时候的中文显示,显示微软雅黑字体

1.安装库pip3 install matplotlib

2.向Matplotlib添加中文字体Microsoft YaHei(微软雅黑)

Matplotlib不能默认使用中文字体显示字符的原因只是因为其未包含中文字体文件,所以导入中文字体文件到Matplotlib中即可。

网上下载微软雅黑的ttf文件。Microsoft YaHei.ttf

D:\Python\Lib\site-packages\matplotlib\mpl-data(新电脑在C盘python39,装python的地方)

打开这个目录可以看到这个路径下的mpl-data/fonts/ttf/,这个就是Matplotlib引入字体的路径,我们只需要把微软雅黑字体的ttf文件拷贝到其中即可。

3.修改Matplotlib的默认字体配置

mpl-data/matplotlibrc这个文件,这个就是Matplotlib的配置文件。

在这个文件中搜索font.family,其中font.family:  sans-serif将#删除即把此行注释打开。则Matplotlib现在的默认字体族是:

font.family : sans-serif

再在这个文件中搜索font.sans-serif,将#删除即把此行注释打开,然后在这个配置的最前面加上Microsoft YaHei,

font.sans-serif : Microsoft YaHei, DejaVu Sans, Bitstream Vera Sans, Lucida Grande, Verdana, Geneva, Lucid, Arial, Helvetica, Avant Garde, sans-serif

则Matplotlib现在的默认sans-serif字体族会最先使用Microsoft YaHei去展示字体,而这个Microsoft YaHei就可以展示中文字体了。

(axes.unicode_minus  : True这一行注释去掉,将true改成false,,,此处用来正常显示负号)(可不做)

4.清除字体缓存(可不做)

为了更好地看到效果,最好可以清楚之前Matplotlib生成的缓存文件,打开~/.matplotlib路径,其中可以看到fontList.JSON和tex.cache,前者其实就是字体列表的缓存文件,可以删除:rm -rf fontList.json

5.当然,懒办法显示中文字体

每次用时需要设置


plt.rcParams['font.sans-serif']=['SimHei'] #用来正常显示中文标签(动态设置)
plt.rcParams['axes.unicode_minus']=False #用来正常显示负号

以上就是Python画图时如何调用本地字体的详细内容,更多关于Python调用本地字体的资料请关注编程网其它相关文章!

--结束END--

本文标题: Python画图时如何调用本地字体

本文链接: https://www.lsjlt.com/news/159852.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • Python画图时如何调用本地字体
    matplotlib中的字体文件被封装在font_manager这个子模块中,fontManager.ttflist这个列表涵盖了所有Matplotlib支持的字体。 >&...
    99+
    2024-04-02
  • Python画图时怎么调用本地字体
    小编给大家分享一下Python画图时怎么调用本地字体,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!matplotlib中的字体文件被封装在font_manager...
    99+
    2023-06-22
  • PHP用 PostScript Type1 字体把文本字符串画在图像上
    ...
    99+
    2024-04-02
  • 如何使用python画城市轮播地图
    这篇文章将为大家详细讲解有关如何使用python画城市轮播地图,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。这里是以其中5个省份的城市为例进行演示画图前准备在画图之前先导入相关的库from py...
    99+
    2023-06-15
  • python如何调整字体大小
    在Python中,可以使用matplotlib库来调整图表中的字体大小。具体步骤如下:1. 导入matplotlib库:```pyt...
    99+
    2023-09-15
    python
  • win10桌面图标字体大小如何调
    要调整Windows 10桌面图标的字体大小,可以按照以下步骤操作:1. 在桌面上单击鼠标右键,选择“显示设置”。2. 在“显示”设...
    99+
    2023-09-09
    win10
  • 如何使用Python画几何图形动画
    要使用Python来绘制几何图形动画,你可以使用一些库来帮助你完成这个任务,如matplotlib、pygame或turtle。下面...
    99+
    2023-08-20
    Python
  • 如何利用python实现图片转化字符画
    目录前言:实例1实例2前言: 字符画:字符画是一系列字符的组合,我们可以把字符看作是比较大块的像素,一个字符能表现一种颜色,字符的种类越多,可以表现的颜色也越多,图片也会更有层次感。...
    99+
    2024-04-02
  • Python如何随数据更新实时画图?Python实时动态绘图
    在数据分析和可视化场景中,我们常常需要实现实时动态图表,比如每分钟读取数据库新的记录,及时更新图表显示最新数据,而不是静态显示某个时间点的数据。本文将介绍使用Python matploblib库的animation功能实现实时动态绘图的方法...
    99+
    2023-09-16
    python matplotlib 开发语言
  • css字体图标如何使用
    这篇文章主要介绍css字体图标如何使用,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完! 在css中,将fonts和style.css文件引入后,可以使用行内...
    99+
    2024-04-02
  • Java如何调用elasticsearch本地代码
    本篇内容主要讲解“Java如何调用elasticsearch本地代码”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Java如何调用elasticsearch本地代码”吧!一、为什么要进行本地调用...
    99+
    2023-06-14
  • python使用matplotlib画图时在指定位置加上文字
    使用plt.text()。该函数的语法如下: plt.text(x, y, s, fontdict=None, withdash=False, **kwargs) 参数说明: x 和 y:表示文本注释...
    99+
    2023-09-05
    matplotlib python 开发语言
  • vue中如何引用字体图标
    这篇文章给大家分享的是有关vue中如何引用字体图标的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。想在vue中引用阿里的iconfont,却出现报错 ,原因是没有对应的loader...
    99+
    2024-04-02
  • python如何根据json数据画疫情分布地图
    本篇内容介绍了“python如何根据json数据画疫情分布地图”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!一.基础地图使用1.掌握使用py...
    99+
    2023-07-04
  • 如何利用Echarts根据经纬度给地图画点画线
    目录1、相关介绍2、地图绘制3、根据经纬度进行标点画线总结 1、相关介绍 在使用Echar进行绘制地图对象,首先我们需要地图的json文件,Echarts依赖默认会引入这个...
    99+
    2024-04-02
  • 如何利用python生成字符画
    这篇文章将为大家详细讲解有关如何利用python生成字符画,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。 python字符画是一个简单有趣的小程序,非常适合初学者进行学(zhuan...
    99+
    2023-06-17
  • win10笔记本电脑中的字体模糊如何调整
    这篇文章主要讲解了“win10笔记本电脑中的字体模糊如何调整”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“win10笔记本电脑中的字体模糊如何调整”吧!首先,一般电脑系统字体模糊的话大多是显...
    99+
    2023-06-27
  • C#如何调用python脚本
    目录C#调用python脚本方式一方式二方式三方式四方式五C#调用python脚本 在平常工程项目开发过程中常常会涉及到机器学习、深度学习算法方面的开发任务,但是受限于程序设计语言本...
    99+
    2024-04-02
  • python如何在word中存储本地图片
    想要利用Python来操作word文档可以使用docx模块. 安装: pip install python-docx from docx import Document from...
    99+
    2024-04-02
  • 如何使用css中的字体图标
    本文将为大家详细介绍“如何使用css中的字体图标”,内容步骤清晰详细,细节处理妥当,而小编每天都会更新不同的知识点,希望这篇“如何使用css中的字体图标”能够给你意想不到的收获,请大家跟着小编的思路慢慢深入,具体内容如下,一起去收获新知识吧...
    99+
    2023-06-08
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作