pyecharts在linux下使用phantomjs生成圖片後中文亂碼及樣式問題解決
項目在windows中運行生成的圖片中文顯示都正常,部署在Linux上之後,中文全部顯示爲方框的亂碼樣式。經查找後發現是因爲Linux服務器上沒有字體庫導致的,所以需要先安裝字體庫,具體安裝可以參照下面的鏈接,寫的很詳細。
https://blog.csdn.net/wlwlwlwl015/article/details/51482065
上述鏈接的教程中僅導入了兩種字體,有需要的話可以將c:/Windows/Fonts下的所有字體文件都導入進去。
導入了字體庫之後再次生成圖片,發現中文可以正常顯示了,但是圖標中title的字體大小顯示不一致,部分有加粗,部分沒有加粗。
猜測可能這是因爲pyecharts中title默認的字體樣式在導入的字體文件中不存在導致的。通過在set_global_opts中設置title的字體樣式後解決。手動設置爲font_family=“Microsoft YaHei”,
set_global_opts(title_opts=opts.TitleOpts(title="普通商品銷量佔比",
title_textstyle_opts=opts.TextStyleOpts(font_family="Microsoft YaHei"))