pyplot文本显示

pyplot中文字符显示

pyplot默认不支持中文字符,因为默认字体是sans-serif,英文字体不能显示中文

方法1,修改需要输出中文字符的地方

在有中文输出的地方,添加属性:fontproperties

  • 优点,使用方便,影响范围可控
  • 缺点:不是所有输出中文的方法都有fontProperties属性,例如图例中文,没有的时候,仍需使用方法2
import matplotlib.pyplot as plt

plt.plot([3,1,5,4,2])
plt.xlabel('X轴值')
plt.ylabel('Y轴值',fontproperties='SimHei') plt.show()

方法2,修改全局默认字体

  • 优点:适用于所有中文乱码情况
  • 缺点:修改后影响本工作空间内所有代码,本次运行中删除代码也不会恢复默认,如想恢复默认可将字体名改回系统默认的sans-serif

例子:

import matplotlib.pyplot as plt

import matplotlib #载入matplotlib完整库
matplotlib.rcParams['font.family']='Microsoft Yahei' #字体,改为微软雅黑,默认 sans-serif
matplotlib.rcParams['font.size']=32 #字体大小,整数字号,默认10 plt.plot([3,1,5,4,2])
plt.xlabel('X axis')
plt.ylabel('Y轴值') plt.show()

一些系统通用中文字体名称(英文名称)

  • Microsoft Yahei 微软雅黑,推荐
  • SimHei 黑体(某些符号可能会出问题,例如负号)
  • Kaiti 楷体
  • FangSong 仿宋

pyplot常用文本显示函数

  • plt.xlabel() X轴文本标签
  • plt.ylabel() Y轴文本标签
  • plt.title() 图表标题
  • plt.text() 任意位置增加文本
  • plt.annotate() 任意位置增加带箭头的注释文本
    • plt.annotate(string,xy=arrow_crd,xytext=text_crd,arrowprops=dict)
    • string:要显示的字符串
    • xy:箭头所在的位置
    • xytext:文本显示的位置
    • arrowprops:字典类型,定义了整个元素显示的一些属性

注:当字符串里有反斜杠等转义特殊字符时,字符串前加r,表示显示原始字符串

例子:

import matplotlib.pyplot as plt

plt.plot([3,1,5,4,2])

plt.xlabel(r'X \axis') #字符串前加r显示原始字符串

plt.ylabel('纵轴值',fontproperties='SimHei',color='#00ff00',fontsize='')

plt.title('图表标题 $a^{2}+b^{2}=C^{2}$',fontproperties='SimHei') #可以使用$引入一部分latex文本排版语法和公式

plt.text(0.5,3,'任意位置文本',fontproperties='SimHei',fontsize='',rotation=45) #任意文本的x,y坐标值(可用latex语法),旋转角度

plt.annotate(
'这里转折', #显示字符串
fontproperties='SimHei', # 中文字体
xy=(3,4), # 箭头位置
xytext=(3.5,4.5), # 文本位置
arrowprops=dict(facecolor='red',shrink=0.1,width=2) # facecolor:箭头颜色;shrink:箭头的起始和结束位置两侧的空白大小;width:箭头宽度
) plt.show()

pyplot文本显示的更多相关文章

  1. css截断长文本显示

    实现 截断长文本显示处理,以前是通过后台的截取,但这种方法容易丢失数据,不利于SEO. 而通过前端css的截断,则灵活多变,可统一运用与整个网站. 这项技术主要运用了text-overflow属性,这 ...

  2. CSS 单行溢出文本显示省略号...的方法(兼容IE FF)(转)

    http://www.52css.com/article.asp?id=602 ===================================================     html ...

  3. 新公司入职第一天遇到的 关于 CSS 单行溢出文本显示省略号...的问题

    上班第一天 前端岗位,因为公司这个项目是标准开发 所以没法用框架在打架页面,好吧 我手写 各种div 各种css样式 好不忧伤,好吧 不废话了 进入正题. 想在导航栏中的 客户信息 功能点 实现溢出用 ...

  4. HTML超出文本显示省略号...[text-overflow]

    需要对div或者span同时应用Css: text-overflow:ellipsis; white-space:nowrap; overflow:hidden; 即可实现所想要得到的溢出文本显示省略 ...

  5. Android开发之多线程下载、断点续传、进度条和文本显示

    代码实现了在Android环境下的多线程下载.断点续传.进度条显示和文本显示百分数: import java.io.BufferedReader; import java.io.File; impor ...

  6. 使用text-overflow:ellipsis对溢出文本显示省略号有两个好处

    使用text-overflow:ellipsis对溢出文本显示省略号有两个好处,一是不用通过程序限定字数:二是有利于SEO.需要使用对对溢出文本显示省略号的通常是文章标题列表,这样处理对搜索引擎更友好 ...

  7. css 溢出文本显示省略号

    这个标题其实已经是一个老生常谈的问题了.很多时候,比如网站最基本的文章列表,标题会很长,而显示列表的区域宽度却没有这么宽,这时候最正常的做法就是 让超出宽度的部分文字用省略号(…)来表示.通常做法是网 ...

  8. EmWin 文本显示函数

    函数模型----------------------------------- 1:void GUI_DispChar(U16 c):  在当前窗口的当前文本位置处,使用当前字体显示单个字符.  c ...

  9. text-overflow:ellipsis ,溢出文本显示省略号

    text-overflow:ellipsis 对溢出文本显示省略号有两个好处, 一是不用通过程序限定字数 二是有利于SEO. 需要使用对对溢出文本显示省略号的通常是文章标题列表,这样处理对搜索引擎更友 ...

随机推荐

  1. Hyper-V 虚拟机连网

    参考:http://www.cnblogs.com/chenxizhang/p/3188005.html(个人推荐) 参考:http://blog.csdn.net/elvis_0123/articl ...

  2. 剑指offer-python面试篇第一部分

    互联网协议定义(分别有4层.5层及7层协议的说法,以下从上层向下层介绍)? a) 四层协议:应用层.传输层.网络层.网络接口层 a) 五层协议: 应用层:用户使用的应用程序都归属于应用层,作用为规定应 ...

  3. Mono.Cecil 修改目标.NET的IL代码保存时报异常的处理。

    使用Mono.Cecil对目标.NET的DLL程序进行IL修改后保存时报“Failed to resolve assembly: ' xxxxxx, version=xxxxx,Culture=xxx ...

  4. java IO包的其他类

    DataInputStream 与 DataOutputStream 记事本默认会查编码表,可能会显示成这样 读取 ByteArrayInputStream 与 ByteArrayOutputStre ...

  5. Yii 用户登录验证

    http://blog.sina.com.cn/s/blog_685213e70101mo4i.html 1)首先在model文件夹中新建文件 LoginForm.php 代码如下 <?php ...

  6. selenium APi

    1.查看浏览器的名字方法:name实例:drvier.name 2.删除浏览器所以的cookies方法:delete_all_cookies()实例:driver.delete_all_cookies ...

  7. ubuntu 14.04 lamp 安装与配置

    一.安装apache 1.打开终端:Ctrl+Alt+T sudo apt-get update 2.通过apt-get方式安装Apache: sudo apt-get install apache2 ...

  8. Centos7安装docker(转!)

    时间在自己的运动中也会碰到挫折,遇到障碍,所以某一段时间也会滞留在哪一个房间里 <百年孤独> 转自:https://www.cnblogs.com/yufeng218/p/8370670. ...

  9. SVN - 简单使用手册

    背景 由于项目需要,新增了两名程序员来一起支持一个分支的开发工作,因此需要在原来的SVN中制作分支并且为new commer  分配用户以及权限. 0. 准备 在Window系统上使用SVN,我们最好 ...

  10. 爬虫框架之Scrapy——爬取某招聘信息网站

    案例1:爬取内容存储为一个文件 1.建立项目 C:\pythonStudy\ScrapyProject>scrapy startproject tenCent New Scrapy projec ...