Heim > Artikel > Backend-Entwicklung > Einführung in die allgemeinen Zeichenfunktionen von Matplotlib in Python
Kostenlose Lernempfehlung: Python-Video-Tutorial
matplotlib verfügt über leistungsstarke Zeichenfunktionen, aber die Anweisungen sind trivial und es ist zu mühsam, bei jeder Verwendung Satz für Satz zu schreiben. Dieser Artikel fasst gängige Zeichenfunktionen basierend auf der täglichen Zeichenerfahrung zusammen, die direkt verwendet werden können und sehr praktisch sind.
import matplotlib.pyplot as pltimport pandas as pdimport numpy as np plt.rcParams['font.sans-serif']=['simhei']#用于正常显示中文标签plt.rcParams['axes.unicode_minus']=False#用于正常显示负号
def plot_cols(data,xlabel=None,ylabel=None,path_file=None,marker=True,len_xticks=10,save=False):
"""
:param data:DataFrame,数据表格--行标题为横坐标,列标题为数据列
Series,序列——行标题为横坐标,name为数据列
:param xlabel: str,横坐标名称
:param ylabel: str,纵坐标名称
:param path_file: str,保存文件路径
:param marker: bool,是否为每条线添加不同的标记
:param len_xticks:int,横坐标显示的值个数
:param save: bool,是否保存图片
example:
data=pd.DataFrame(np.random.random((100,3)),index=np.arange(100),columns=['a','b','c'])
plot_cols(data,xlabel='指标',ylabel='指数')
"""
data.index=data.index.astype(str)
plt.figure(figsize=(12,8))
markers=['.',',','o','v','^','','1','2','3','4','s','p','*','h','H','+','x','D','d','|','_']#标记符号
#如果是DataFrame表格形式,则画出多列;如果是Series,则画出单列
if type(data) is pd.core.frame.DataFrame:
#是否为每条线添加不同的符号
if marker==False:
for col in data.columns:
plt.plot(data[col],marker='o',label=col)
else:
for col,marker_ in zip(data.columns,markers):
plt.plot(data[col], marker=marker_, label=col)
elif type(data) is pd.core.series.Series:
plt.plot(data, marker='o', label=data.name)
plt.legend(loc='best',fontsize='small')
xticks=np.linspace(0,len(data),(len_xticks+1)).astype(int).tolist()[:-1]#被显示的横坐标刻度值的位置
plt.xticks(data.index[xticks],rotation=270)
plt.ylabel(ylabel,fontsize=15)
plt.xlabel(xlabel,fontsize=15)
plt.grid(True,alpha=0.2)
if save==True:plt.savefig(path_file)if __name__=='__main__':
x=np.arange(1,101)
data = pd.DataFrame({'a':x*2+3,'b':x*3-4,'c':np.log(x)+9}, index=np.arange(100))
plot_cols(data, xlabel='指标', ylabel='指数')
(Video)
Das obige ist der detaillierte Inhalt vonEinführung in die allgemeinen Zeichenfunktionen von Matplotlib in Python. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!