基本概念
数据分析的概念
将大量的数据进行统计和整理,得出结论,为后续决策提供数据支持
anaconda的安装与使用
matplotlib
matplotlib
可对官方说明文档的examples中选择图片类型对应代码进行修改
plt.plot绘制折线图
设置图片大小figsize
绘图plt.plot
保存图片plt.savefig(‘保存地址’)
坐标轴刻度:plt.xticks/yticks
from matplotlib import pyplot as plt
x = range(2,27,2)
y = [15,13,14,5,17,20,25,26,26,27,22,18,15]
#设置图片大小
plt.figure(figsize=(20,8),dpi=80)
#绘图
plt.plot(x,y)
_xtick_labels = [i/2 for i in range(4,49)]
plt.xticks(_xtick_labels[::3])
plt.yticks(range(min(y),max(y)+1))
#plt.savefig('./t1.png')
plt.show()
设置中文:font_manager
显示中文处使用fontproperties
图例中使用prop
import random
from matplotlib import pyplot as plt
import matplotlib
from matplotlib import font_manager
#windows和Linux设置字体的方式
# font = {'family': 'Microsoft YaHei',
# 'weight': 'bold',
# 'size': 'larger'}
# matplotlib.rc('font',**font)
# matplotlib.rc('font',family='Microsoft Yahei')
#另外一种设置字体的方式
my_font = font_manager.FontProperties(fname='C:\Windows\Fonts\STSONG.TTF')
x = range(0,120)
y = [random.randint(20,35) for i in range(120)]
plt.figure(figsize = (80,30),dpi=80)
plt.plot(x,y)
# 调整x轴的刻度
_x = list(x)
_xticks_labels = ['10点{0}分'.format(i) for i in range(60)]
_xticks_labels += ['11点{0}分'.format(i-60) for i in range(60,120)]
plt.xticks(_x[::10],_xticks_labels[::10],rotation=45,fontproperties = my_font) #刻度数据rotation旋转度数
plt.show()
设置坐标轴和图的名称
plt.xlabel
plt.title
绘制网格 plt.grid
绘制图例plt.legend
注:图例中的中文显示用prop
from matplotlib import pyplot as plt
import matplotlib
from matplotlib import font_manager
my_font = font_manager.FontProperties(fname='C:\Windows\Fonts\STSONG.TTF')
x = range(11,31)
y1 = [1,0,1,1,2,4,3,2,3,4,4,5,6,5,4,3,3,1,1,1]
y2 = [1,0,3,1,2,2,3,3,2,1,2,1,1,1,1,1,1,1,1,1]
plt.figure(figsize=(20,4),dpi=80)
plt.plot(x,y1,label='自己',color='red',linestyle='-.',linewidth=2)
plt.plot(x,y2,label='同桌',color='black',linewidth=2)
_xticks_labels = ['{}岁'.format(i) for i in range(11,31)]
plt.xticks(x,_xticks_labels,rotation=45,font_properties=my_font)
#添加坐标轴名称
plt.xlabel('时间/年',font_properties=my_font)
plt.ylabel('人数',font_properties=my_font)
plt.title('不同年龄阶段的恋爱人数',font_properties=my_font)
plt.yticks(range(0,9))
#绘制网格
plt.grid(alpha=0.2,linestyle=':')
#添加图例
plt.legend(prop=my_font,loc='upper right')
#展示
plt.show()