Detailed explanation of the effective method of displaying Chinese in matplotlib requires specific code examples
In data visualization, matplotlib is a very commonly used library, which provides powerful and flexible drawing function. However, matplotlib does not support displaying Chinese characters by default, which brings inconvenience to users. This article will introduce some effective methods to display Chinese in matplotlib and provide specific code examples.
Method 1: Using system fonts
matplotlib can display Chinese by setting the system font path. First, we need to find the corresponding font file in the system. For example, the path of Microsoft Yahei font is "C:/Windows/Fonts/msyh.ttc".
import matplotlib.pyplot as plt from matplotlib.font_manager import FontProperties font = FontProperties(fname='C:/Windows/Fonts/msyh.ttc') plt.rcParams['font.family'] = font.get_name() # 绘图代码 plt.plot([1, 2, 3, 4], [1, 4, 9, 16]) plt.xlabel('横轴', fontproperties=font) plt.ylabel('纵轴', fontproperties=font) plt.title('示例图', fontproperties=font) plt.show()
Method 2: Use custom fonts
If there is no corresponding font file in the system, we can place the required font file in the current directory and use custom fonts to display Chinese.
import matplotlib.pyplot as plt from matplotlib.font_manager import FontProperties font = FontProperties(fname='myfont.ttf') plt.rcParams['font.family'] = font.get_name() # 绘图代码 plt.plot([1, 2, 3, 4], [1, 4, 9, 16]) plt.xlabel('横轴', fontproperties=font) plt.ylabel('纵轴', fontproperties=font) plt.title('示例图', fontproperties=font) plt.show()
Method 3: Use the Chinese display module
In matplotlib, there are some third-party modules that can be used directly to display Chinese, such as matplotlib-chinafonts and matplotlib-charset. These modules can be installed via the pip command and used according to the instructions.
import matplotlib.pyplot as plt import matplotlib.font_manager as mfm font_path = "C:/Windows/Fonts/msyh.ttc" prop = mfm.FontProperties(fname=font_path) plt.rcParams['font.family'] = prop.get_name() # 绘图代码 plt.plot([1, 2, 3, 4], [1, 4, 9, 16]) plt.xlabel('横轴', fontproperties=prop) plt.ylabel('纵轴', fontproperties=prop) plt.title('示例图', fontproperties=prop) plt.show()
Summary:
When using matplotlib for data visualization, displaying Chinese is a common requirement. This article introduces three effective methods to display Chinese in matplotlib and provides specific code examples. By setting the system font path, using custom fonts, and using third-party Chinese display modules, we can easily achieve Chinese display. I hope readers can use Chinese as much as they want when using matplotlib and improve the effect of data visualization!
The above is the detailed content of Detailed explanation of effective methods for displaying Chinese characters in matplotlib. For more information, please follow other related articles on the PHP Chinese website!