99999久久久久久亚洲,欧美人与禽猛交狂配,高清日韩av在线影院,一个人在线高清免费观看,啦啦啦在线视频免费观看www

熱線電話:13121318867

登錄
首頁精彩閱讀Python matplotlib畫圖的中文顯示問題
Python matplotlib畫圖的中文顯示問題
2018-02-25
收藏

Python matplotlib畫圖的中文顯示問題

python中的matplotlib僅支持Unicode編碼,默認是不顯示中文的,如果讓其默認顯示中文,有下面2種方法:

第一種方法:
1、在python的安裝目錄中找到配置文件: %Python_Home%\Lib\site-packages\matplotlib\mpl-data\matplotlibrc    (如,我的是在C:\Python34\Lib\site-packages\matplotlib\mpl-data),用任意文本編輯器打開。
2、找到139行的font.family         : sans-serif將其前面的#注釋號去掉
3、找到151行的font.sans-serif     :AR PL UMing CN, SimHei, Bitstream Vera Sans, Lucida Grande, Verdana, Geneva, Lucid, Arial, Helvetica, Avant Garde, sans-serif將【AR PL UMing CN, SimHei】添加在最前面,其中AR PL UMing CN代表:宋體。SimHei代表:黑體。并將前面的#注釋號去掉,重啟編輯器后,便可顯示中文了。
4、同時需要更改264行的axes.unicode_minus  : False;使其值為False;否則無法顯示負號
5、代碼如下:

import matplotlib.pyplot as plt

plt.xlabel('x軸')

plt.ylabel('y軸')

plt.bar(left = (0,1),height =(1,0.5),width = 0.35)

plt.show()

【注:低版本中x.label(u'x軸');中文前需要加u;請注意】
第二種方法:
在代碼中動態(tài)設置(推薦方式)
這種方式不需要修改配置文件,比較方便,推薦該方法,下面是具體步驟:
首先要再python腳本中的開頭加上后面的內容:#-*- coding: utf-8 -*-,即用utf8編碼
然后在代碼中動態(tài)設置字體,下面是主要的幾行代碼
[python] view plain copy

    from matplotlib.font_manager import FontProperties  
    import matplotlib.pyplot as plt  
    font = FontProperties(fname=r"c:\windows\fonts\simsun.ttc", size=14)  
      
    plt.xlabel(u"電壓差(V)", fontproperties=font)  
    plt.ylabel(u"介質損耗角差(度)", fontproperties=font)  
    plt.title(u"介質損耗角和荷電狀態(tài)SOC關系圖",fontproperties=font)

數據分析咨詢請掃描二維碼

若不方便掃碼,搜微信號:CDAshujufenxi

數據分析師資訊
更多

OK
客服在線
立即咨詢
客服在線
立即咨詢
') } function initGt() { var handler = function (captchaObj) { captchaObj.appendTo('#captcha'); captchaObj.onReady(function () { $("#wait").hide(); }).onSuccess(function(){ $('.getcheckcode').removeClass('dis'); $('.getcheckcode').trigger('click'); }); window.captchaObj = captchaObj; }; $('#captcha').show(); $.ajax({ url: "/login/gtstart?t=" + (new Date()).getTime(), // 加隨機數防止緩存 type: "get", dataType: "json", success: function (data) { $('#text').hide(); $('#wait').show(); // 調用 initGeetest 進行初始化 // 參數1:配置參數 // 參數2:回調,回調的第一個參數驗證碼對象,之后可以使用它調用相應的接口 initGeetest({ // 以下 4 個配置參數為必須,不能缺少 gt: data.gt, challenge: data.challenge, offline: !data.success, // 表示用戶后臺檢測極驗服務器是否宕機 new_captcha: data.new_captcha, // 用于宕機時表示是新驗證碼的宕機 product: "float", // 產品形式,包括:float,popup width: "280px", https: true // 更多配置參數說明請參見:http://docs.geetest.com/install/client/web-front/ }, handler); } }); } function codeCutdown() { if(_wait == 0){ //倒計時完成 $(".getcheckcode").removeClass('dis').html("重新獲取"); }else{ $(".getcheckcode").addClass('dis').html("重新獲取("+_wait+"s)"); _wait--; setTimeout(function () { codeCutdown(); },1000); } } function inputValidate(ele,telInput) { var oInput = ele; var inputVal = oInput.val(); var oType = ele.attr('data-type'); var oEtag = $('#etag').val(); var oErr = oInput.closest('.form_box').next('.err_txt'); var empTxt = '請輸入'+oInput.attr('placeholder')+'!'; var errTxt = '請輸入正確的'+oInput.attr('placeholder')+'!'; var pattern; if(inputVal==""){ if(!telInput){ errFun(oErr,empTxt); } return false; }else { switch (oType){ case 'login_mobile': pattern = /^1[3456789]\d{9}$/; if(inputVal.length==11) { $.ajax({ url: '/login/checkmobile', type: "post", dataType: "json", data: { mobile: inputVal, etag: oEtag, page_ur: window.location.href, page_referer: document.referrer }, success: function (data) { } }); } break; case 'login_yzm': pattern = /^\d{6}$/; break; } if(oType=='login_mobile'){ } if(!!validateFun(pattern,inputVal)){ errFun(oErr,'') if(telInput){ $('.getcheckcode').removeClass('dis'); } }else { if(!telInput) { errFun(oErr, errTxt); }else { $('.getcheckcode').addClass('dis'); } return false; } } return true; } function errFun(obj,msg) { obj.html(msg); if(msg==''){ $('.login_submit').removeClass('dis'); }else { $('.login_submit').addClass('dis'); } } function validateFun(pat,val) { return pat.test(val); }