linux生成文字变成小框框,无法正常显示汉字

1现象


文字全部变成方框

原因:操作系统没有中文字体(此图片中能显示出的中文是一张图片,方框是后添加的中文。)

解决办法:在操作系统添加中文。

操作步骤:

1.下载文件:simsun.ttf

下载地址:http://pan.baidu.com/s/1miO02Dy     或http://download.csdn.net/download/ruantao1989/6992169

2.创建目录:在linux操作系统中/usr/share/fonts/下创建目录

cd /usr/share/fonts/

mkdir myfont

cd myfont

3.将文件放到目录中

cp /root/simsun.ttf  ./

4.更新字体缓存,执行命令:

mkfontscale

mkfontdir

fc-cache

OK了


另一种方式(没试过):

将中文字体放到/usr/share/fonts/zh_CN/TrueType路径下(如果路径不存在,需要手动创建)
将中文字体放到/usr/java/jdk1.7.0_67-cloudera/jre/lib/fonts路径下(如果路径不存在,需要手动创建)

这种情况通常是因为matplotlib库在尝试渲染中文字符时,没有找到合适的字体支持。由于matplotlib默认的字体集不包含中文字符,所以中文字符会显示为小方框(口字)。 要解决这个问题,可以指定一个包含中文字符的字体。以下是解决步骤: 1. 首先,你需要确定你的操作系统支持哪些中文字体。例如,在Windows系统中,常用的中文字体包括`SimHei`, `Microsoft YaHei`等;在Mac系统中,可以使用`STHeiti`;在Linux系统中,可能是`WenQuanYi Zen Hei`或`AR PL UMing CN`等。 2. 接着,可以使用matplotlib的`font_manager`来设置字体。在你的Python脚本中,可以添加如下代码来指定字体: ```python import matplotlib.pyplot as plt from matplotlib.font_manager import FontProperties # 设置字体路径(Windows示例) font = FontProperties(fname=r"c:\windows\fonts\simsun.ttc", size=14) # 或者在代码中直接指定字体名称(根据系统进行选择) font = FontProperties(fname=None, family='SimHei', size=14) # 使用该字体设置图表标题或者轴标签等 plt.title(u'图表标题', fontproperties=font) plt.xlabel(u'X轴标签', fontproperties=font) plt.ylabel(u'Y轴标签', fontproperties=font) plt.show() ``` 3. 如果你希望永久更改matplotlib的默认字体,可以在配置文件`matplotlibrc`中进行设置。通常这个文件位于matplotlib库的配置目录下。编辑该文件,添加或修改如下行: ``` font.family : sans-serif font.sans-serif : SimHei, Arial, sans-serif ``` 其中`SimHei`是示例字体,你可以根据自己的系统情况更换为其他支持中文的字体名称。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值