日韩久久久精品,亚洲精品久久久久久久久久久,亚洲欧美一区二区三区国产精品 ,一区二区福利

【python數(shù)據(jù)可視化筆記】——matplotlib圖例中文亂碼以及坐標負號

系統(tǒng) 2161 0

matplotlib圖例中文亂碼以及坐標負號顯示

??在圖片的標簽名,標題名或者圖例中出現(xiàn)中文時,直接運行會出現(xiàn)亂碼,文字顯示為框框

            
              
                import
              
               matplotlib
              
                .
              
              pyplot 
              
                as
              
               plt

plt
              
                .
              
              figure
              
                (
              
              
                )
              
              
plt
              
                .
              
              title
              
                (
              
              
                "哈哈"
              
              
                )
              
              
plt
              
                .
              
              show
              
                (
              
              
                )
              
            
          

【python數(shù)據(jù)可視化筆記】——matplotlib圖例中文亂碼以及坐標負號顯示_第1張圖片

快速解決辦法

??在導(dǎo)入模塊后加入下面代碼

            
              plt
              
                .
              
              rcParams
              
                [
              
              
                'font.sans-serif'
              
              
                ]
              
              
                =
              
              
                [
              
              
                'SimHei'
              
              
                ]
              
              
                # 用來正常顯示中文標簽
              
              
plt
              
                .
              
              rcParams
              
                [
              
              
                'axes.unicode_minus'
              
              
                ]
              
              
                =
              
              
                False
              
              
                # 用來正常顯示負號
              
            
          
            
              
                import
              
               matplotlib
              
                .
              
              pyplot 
              
                as
              
               plt

plt
              
                .
              
              rcParams
              
                [
              
              
                'font.sans-serif'
              
              
                ]
              
              
                =
              
              
                [
              
              
                'SimHei'
              
              
                ]
              
              
plt
              
                .
              
              rcParams
              
                [
              
              
                'axes.unicode_minus'
              
              
                ]
              
              
                =
              
              
                False
              
              

plt
              
                .
              
              figure
              
                (
              
              
                )
              
              
plt
              
                .
              
              title
              
                (
              
              
                "哈哈"
              
              
                )
              
              
plt
              
                .
              
              show
              
                (
              
              
                )
              
            
          

【python數(shù)據(jù)可視化筆記】——matplotlib圖例中文亂碼以及坐標負號顯示_第2張圖片

永久解決辦法

找到自己想要的中文字體

  1. 在系統(tǒng)中查找已有的字體(好處是不需要安裝):在“C:\Windows\Fonts”中選擇后綴為“.ttf”的中文字體并復(fù)制,這一步我選擇了黑體

  2. 在 fontpalace 上下載對應(yīng)版本的后綴為“.ttf”的字體,復(fù)制到“C:\Windows\Fonts”中安裝

把字體復(fù)制到matplotlib的字體文件中

??輸入下面命令找到matplotlib配置文件

            
              
                print
              
              
                (
              
              matplotlib
              
                .
              
              matplotlib_fname
              
                (
              
              
                )
              
              
                )
              
            
          

在“c:\program files\python37\lib\site-packages\matplotlib\mpl-data\matplotlibrc”的“font/ttf”文件夾中粘貼剛剛復(fù)制的字體,然后修改配置文件matplotlibrc,去掉以下三行代碼開頭的#

            
              font.family         : sans-serif

font.sans-serif     : SimHei, DejaVu Sans, Bitstream Vera Sans, ...    # 這里注意要把字體名稱SimHei放在第一個

axes.unicode_minus  : False    # 修改為False,作用是解決負號的亂碼問題

            
          

還要注意有的字體名稱并不是字體文件的名稱,可以查看字體文件的屬性(標題)確認一下

重新加載字體

??做完以上操作后執(zhí)行下面命令

            
              
                from
              
               matplotlib
              
                .
              
              font_manager 
              
                import
              
               _rebuild

_rebuild
              
                (
              
              
                )
              
            
          

之后重啟python,很多時候這樣就解決了。

刪除matplotlib緩存文件

??如果仍然不能正常顯示輸入以下代碼

            
              matplotlib
              
                .
              
              get_cachedir
              
                (
              
              
                )
              
            
          

在’C:\Users\sunch\.matplotlib’找到緩存文件夾并刪除該文件夾,之后重啟python,如果還是不行可以試試重啟電腦,我就是重啟了才可以,果然沒有什么是一次重啟解決不了的,如果有那就兩次


更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯(lián)系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發(fā)表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 多伦县| 思南县| 武城县| 桂东县| 双峰县| 甘南县| 银川市| 松阳县| 茂名市| 来凤县| 灵宝市| 交城县| 襄垣县| 汉中市| 邓州市| 综艺| 迭部县| 新田县| 宝坻区| 凤凰县| 嘉峪关市| 顺平县| 香格里拉县| 册亨县| 天水市| 宁化县| 洪江市| 德庆县| 临清市| 微山县| 临澧县| 陇西县| 新疆| 吴忠市| 安宁市| 日土县| 镇巴县| 安化县| 蛟河市| 昔阳县| 壤塘县|