导包:
# coding=utf-8
import numpy as py
from matplotlib import pyplot as plt # 导入画图工具
import random
# 支持中文
plt.rcParams['font.sans-serif'] = ['SimHei'] # 用来正常显示中文标签
plt.rcParams['axes.unicode_minus'] = False # 用来正常显示负号
绘制简单的折线图:
图例1
根据温度绘制折线图:
# 定义数据,日期
x = range(2,26,2)
# 定义温度
y = [15,13,14,5,17,8,26,26,24,22,18,15]
# 实例化一个图像,设置大小(20x8),dpi可以让图像更加清晰
fig = plt.figure(figsize=(20,8),dpi=80)
# 设置x轴刻度
plt.xticks(range(2,25))
# 设置y轴刻度(由y数据集,决定y轴中,刻度最低的值和刻度最高的值)
plt.yticks(range(min(y),max(y)+1))
# 给图像赋值
plt.plot(x,y)
plt.show()
图例2
绘制小白和小黑,11到30岁获得奖项的折线图:
# 11 到 30岁获得的奖项
y_1 = [1,0,1,1,2,4,3,2,6,4,4,5,6,5,4,3,3,1,1]
y_2 = [3,0,1,2,2,5,1,2,2,2,7,5,5,5,4,2,0,0,1]
x = range(11,30)
# 需要设置一下,每条折线的标签,否则后面的legend会报错
plt.plot(x,y_1,label="小白")
plt.plot(x,y_2,label="小黑")
# 定义x轴的的刻度值
x_label = ["{}岁".format(i) for i in x]
# rotation 设置x轴倾斜度数
plt.xticks(x,x_label,rotation=60)
plt.yticks(range(min(y),max(y)))
# 绘制网格
plt.grid(alpha = 0.4)
# 设置x轴和y轴的标签
plt.xlabel("年龄")
plt.ylabel("次数 单位(次)")
# 图例
plt.legend()
plt.show()
绘制散点图:
a = [11,17,16,11,12,11,12,6,6,7,8,9,12,15,14,17,18,21,16,17,20,14,15,15,19,21,22,22,22,23,15]
b = [26,26,28,19,24,17,16,19,18,20,20,19,22,23,17,20,21,20,22,15,11,15,5,13,17,10,11,13,12,13,6]
# 设置x轴的长度
x = range(31)
# 设置x轴刻度值
x_tickes = ["5月{}日".format(i) for i in range(32)]
# 给散点图赋值
plt.scatter(x,a)
plt.scatter(x,b)
# 设置x轴和y轴的刻度
plt.xticks(x[::3],x_tickes[::3],rotation=60)
plt.yticks(range(min(a),max(b)))
#展示图像
plt.show()
根据3日的电影数据绘制条形图:
a = ["猩球崛起","敦刻尔克","蜘蛛侠","战狼2"]
b_16 = [15746,312,4497,319]
b_15 = [12357,156,2045,168]
b_14 = [2358,339,2359,362]
# 设置每条数据所间隔的宽度为0.2
x_14 = list(range(len(a)))
x_15 = [i+0.2 for i in x_14]
x_16 = [i+0.4 for i in x_14]
# 绘制每条数据,间隔0.2,每条条状图宽度为0.2
plt.bar(x_14,b_14,width=0.2,label = "14日")
plt.bar(x_15,b_15,width=0.2,label = "15日")
plt.bar(x_16,b_16,width=0.2,label = "16日")
# 打印图例
plt.legend()
# 设置x轴刻度,放在中间,所以用15日的刻度位置
plt.xticks(x_15,a)
# 展示图像
plt.show()
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)