您的位置:首页 > 编程语言 > PHP开发

matplotlib基础用法绘制折线图

2019-07-02 16:51 579 查看
版权声明:本文为博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明。 本文链接:https://blog.csdn.net/weixin_42920958/article/details/94392133

matplotlib 可以将数据进行可视化,更直观呈现,可以使数据更加客观,更具说服力,是最流行的python底层绘图库,可以做数据可视化图表。

[code]from matplotlib import pyplot as plt
x = range(2,26,2)
y=[15,13,14,5,17,20,25,26,24,22,18,15]
plt.plot(x,y)
plt.show()
[code]from matplotlib import pyplot as plt

flg = plt.figure(figsize=(20,8),dpi=80)#figure值图形图标,这里指的是绘制的图,
# 通过实例化一个figure并且传递参数,可以在后台自动使用该figure实例
#传入dpi参数可以让图片更加清晰
x = range(2,26,2)
y = [15,13,14,5,17,20,25,26,26,24,22,18,15]
plt.plot(x,y)
plt.savefig("./sig_size.png")#保存图片
plt.show()

设置x,y轴刻度

[code]from matplotlib import pyplot as plt
import numpy as np

#设置图片大小
flg = plt.figure(figsize=(20,8),dpi=80)#figure值图形图标,这里指的是绘制的图,
x = range(2,26,2)

y = [15,13,14,5,17,20,25,26,26,24,22,20]

#绘图
plt.plot(x,y)

#设置x轴刻度
_xtick_labels = [i/2 for i in range(2,49)]
plt.xticks(_xtick_labels)
plt.yticks(range(min(y),max(y)+1))
#保存图片
plt.savefig("./pic_size .png")
plt.show()

设置x轴中文字体配置

[code]from matplotlib import pyplot as plt
import random
import matplotlib
from matplotlib import font_manager

#windows和linux设置中文字体的方式
font = {'family': 'MicroSoft YaHei',
'weight': 'bold'
}

#mac设置中文字体
# my_font=font_manager.FontProperties(fname="字体存储路劲")
# plt.xticks(_x[::3],_xtick_label[::3],rotation=45,fontproperties=my_font)

matplotlib.rc("font",**font)
x=range(0,120)
y=[random.randint(20,30) for i in range(120)]
plt.figure(figsize=(20,8),dpi=80)
print(y)
plt.plot(x,y)
#设置x轴刻度
_x = list(x) #取步长
_xtick_label = ["10点{}分".format(i) for i in range(60)]#设置字符串
_xtick_label += ["11点{}分".format(i-60) for i in range(60,120)]#设置字符
plt.xticks(_x[::3],_xtick_label[::3],rotation=45)#x刻度旋转度数
plt.show()

设置图形信息

[code]#添加描述信息
plt.xlabel("时间")
plt.ylabel("温度,单位(C)")
plt.title("10点到12点每分钟气温变化情况")
plt.show()

设置图例

[code]from matplotlib import pyplot as plt
import matplotlib
from matplotlib import font_manager

#windows和linux设置中文字体的方式
font = {'family': 'MicroSoft YaHei',
'weight': 'bold'
}
matplotlib.rc("font",**font)

y_1 = [1,0,1,1,2,4,3,2,2,4,4,5,6,5,4,3,3,1,1,1]
y_2 = [1,3,1,3,2,4,3,1,1,2,3,2,6,5,2,0,1,1,1,1]
x = range(11,31)
plt.figure(figsize=(20,8),dpi=80)
plt.plot(x,y_1,label="自己")
plt.plot(x,y_2,label="别人")
#设置x轴刻度
_xtick_label = ["{}岁".format(i) for i in x]
plt.xticks(x,_xtick_label)
plt.yticks(range(0,9))
#绘制网格
plt.grid(alpha=0.4)#设置网格透明度
#添加图例
plt.legend()
plt.show()

方法总结:

  1. 绘制折线图(plt.plot)
  2. 设置图像大小和分辨率(plt.figure)
  3. 实现图片保存(plt.savefig)
  4. 设置xy轴上的刻度和字符串(xticks)
  5. 解决刻度稀疏和密集(xticks,yticks)
  6. 设置标题,xy轴label(title,xlabel,ylabel)
  7. 设置字体(font_manager,fontProperties,matplotlib.rc)
  8. 一个图绘制多个图形(plt多次plot)
  9. 为不同的图像添加图例,plt.legend(),label

       

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: