国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Python > 正文

Python實現matplotlib顯示中文的方法詳解

2020-02-22 23:08:13
字體:
來源:轉載
供稿:網友

本文實例講述了Python實現matplotlib顯示中文的方法。分享給大家供大家參考,具體如下:

【注意】

可能與本文主題無關,不過我還是想指出來:使用matplotlib庫時,下面兩種導入方式是等價的(我指的是等效,當然這個說法可以商榷:)

import matplotlib.pyplot as plt
import pylab as plt

【效果圖】

【方式一】FontProperties

import matplotlib.pyplot as pltfrom matplotlib.font_manager import FontProperties # 步驟一# ...font = FontProperties(fname=r"c:/windows/fonts/simsun.ttc", size=14) # 步驟二plt.xlabel("x軸", fontproperties=font) # 步驟三plt.ylabel("y軸", fontproperties=font)plt.title("標題", fontproperties=font)plt.show()

總的來說,很丑陋。

【方式二】 fontproperties

import matplotlib.pyplot as plt# ...plt.xlabel("x軸")plt.ylabel("y軸", fontproperties="SimSun") # 步驟一  (宋體)plt.title("標題", fontproperties="SimHei") #     (黑體)plt.show()

靈活,另一個優點:不污染全局字體設置

【方式三】rcParams

import matplotlib.pyplot as pltplt.rcParams['font.sans-serif'] = ['SimHei'] # 步驟一(替換sans-serif字體)plt.rcParams['axes.unicode_minus'] = False  # 步驟二(解決坐標軸負數的負號顯示問題)#...plt.xlabel("x軸")plt.ylabel("y軸")plt.title("標題")plt.show()

簡潔的用法。缺點:污染全局字體設置。(所以需要第二步驟)

【方式四】rc

import matplotlib.pyplot as pltfont = {'family' : 'SimHei',    'weight' : 'bold',    'size'  : '16'}plt.rc('font', **font)        # 步驟一(設置字體的更多屬性)plt.rc('axes', unicode_minus=False) # 步驟二(解決坐標軸負數的負號顯示問題)#...plt.xlabel("x軸")plt.ylabel("y軸")plt.title("標題")plt.show()

靈活的用法。缺點:影響全局字體(所以需要第二步驟)

【總結】

方式二用時才設置,且不會污染全局字體設置,更靈活
方式三、方式四不需要對字體路徑硬編碼,而且一次設置,多次使用,更方便。

【測試代碼】

import numpy as npimport matplotlib.pyplot as pltfont = {'family' : 'DFKai-SB',    'weight' : 'bold',    'size'  : '16'}plt.rc('font', **font) # pass in the font dict as kwargsplt.rc('axes',unicode_minus=False)x = np.linspace(0, 10, 1000)y = np.sin(x)z = np.cos(x**2)plt.figure(figsize=(8,4))plt.plot(x,y,label="$sin(x)$",color="red",linewidth=2)plt.plot(x,z,"b--",label="$cos(x^2)$")plt.xlabel("x軸")plt.ylabel("y軸")plt.title("標題")plt.ylim(-1.2,1.2)plt.legend()plt.show()

運行結果:

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 温宿县| 攀枝花市| 茂名市| 沙雅县| 曲麻莱县| 石狮市| 临西县| 泌阳县| 大田县| 大同市| 武平县| 铜梁县| 湖州市| 偃师市| 景宁| 绿春县| 资源县| 江都市| 五台县| 宁武县| 昆明市| 沙雅县| 平顺县| 巢湖市| 西乌珠穆沁旗| 博湖县| 疏勒县| 新绛县| 磐安县| 宁化县| 志丹县| 枞阳县| 双城市| 扎鲁特旗| 杨浦区| 比如县| 东明县| 庄河市| 通榆县| 罗源县| 合川市|