matplotlib绘图(折线图,柱状图,饼状图,散点图,直方图)

折线图

x = [1,2,3,4,5]
y = [1,2,3,4,5]
# 调用绘制线性图函数plot()
plt.plot(x,y,
    c='b',                 # 线的颜色
    linestyle=':',         # 线的风格
    linewidth=3,           # 线的宽度
    marker='o',            # 标记点的样式
    markerfacecolor='r',   # 标记点的颜色
    markersize=10,         # 标记点的大小
    alpha=0.7,             # 图形的透明度
    label="x=y"            # 设置图例的label   
)
plt.legend()
plt.show()

在这里插入图片描述

# numpy数据
y1 = np.random.random(6) # 第1条折线y轴
y2 = np.random.random(6) # 第2条折线y轴
x = np.arange(6) # 公用的x轴

plt.plot(x, y1, label='成都') # 绘制第1条折线图
plt.plot(x, y2, label='武汉') # 绘制第2条折线图
plt.legend(loc='best') # 显示折线

plt.title('各城市房价(单位:万)', fontsize=20) # 设置标题
index_name = ['1月', '2月', '3月', '4月', '5月', '6月'] # 设置刻度
plt.xticks(x,index_name) # 将x坐标刻度数值与字符对应

plt.show() # 显示图形

在这里插入图片描述

# 使用DataFrame数据
data_frame = pd.DataFrame({
'Python基础': np.random.randint(10, 100, 5),
'Python爬虫': np.random.randint(10, 100, 5),
'Python Web': np.random.randint(10, 100, 5),
})
plt.plot(data_frame, marker='o')
# 显示图例
plt.legend(data_frame, loc=2)
# 设置x轴刻度标签
plt.xticks([0, 1, 2, 3, 4], ['1月', '2月', '3月', '4月', '5月'])
plt.title('2022年课程购买人数')
plt.xlabel('月份')
plt.ylabel('购买人数')
# linewidth 设置网格的宽度
plt.grid()
# 显示图形
plt.show()

在这里插入图片描述

柱状图

x = [1,2,3,4,5]
index_name = ['星期一','星期二','星期三','星期四','星期五']
height = [2.5,3.5,4.6,5.7,6.8]
plt.bar(x,height,color='r')
plt.xticks(x,index_name)
plt.title('销售量(单位:万元)')
# 添加文字
for x,height in zip(x,height):
    plt.text(x,height,height,ha='center',va='bottom')
plt.show()

在这里插入图片描述

叠加柱状图

plt.figure(figsize=(4,4),dpi=100)  # 设置图像大小,dpi设置图像像素
x = [1,2,3,4,5]
index_name = ['星期一','星期二','星期三','星期四','星期五']
height1 = [2.5,3.5,4.6,5.7,6.8]
height2 = [2,3,4,5,6]
plt.bar(x,height1,color='r',label='python销量')
plt.bar(x,height2,bottom=height1,color='b',label='c语言销量')
plt.xticks(x,index_name)
plt.title('销售量(单位:万元)')
plt.legend()  # 调用label
plt.show()

在这里插入图片描述

并列柱状图

plt.figure(figsize=(4,4),dpi=100)  # 设置图像大小,dpi设置图像像素
x = np.arange(5)
index_name = ['星期一','星期二','星期三','星期四','星期五']
height1 = [2.5,3.5,4.6,5.7,6.8]
height2 = [2,3,4,5,6]

bar_width = 0.3
plt.bar(x,height1, bar_width,color='r',label='python销量')
plt.bar(x + bar_width,height2, bar_width, color='b',label='c语言销量')
plt.xticks(x+bar_width/2,index_name)
plt.title('销售量(单位:万元)')
plt.legend()  # 调用label
plt.show()

在这里插入图片描述

水平柱状图(条形图)

plt.figure(figsize=(4,4),dpi=100)
y=[1,2,3,4,5]
index_name = ['python','c语言','c++','java','php']
plt.yticks(y,index_name)
width = [2.5,3.6,4.7,5.8,6.0]
plt.barh(y,width)
# 添加文字
for y,width in zip(y,width):
    plt.text(width,y,width)
plt.show()

在这里插入图片描述

饼状图

plt.figure(figsize=(4,4),dpi=100)
labels = ['A','B','C','D','E']
x = [10,20,30.5,40.6,50.7]
explode = [0,0.1,0,0,0.1]  # 突出某一部分

plt.pie(x,labels=labels,autopct='%.0f%%',explode=explode)
plt.show()

在这里插入图片描述

散点图

x = [1,2,3,4,5]
y = [1,2,3,4,5]
a = np.random.rand(10)
b = np.random.rand(10)
size1 = np.random.rand(5)*200
size2 = np.random.rand(10)*100
plt.scatter(x,y,color='y',s=size1)
plt.scatter(a,b,color='b',s=size2)  #s的size大小必须与x,y的大小相匹配
plt.show()

在这里插入图片描述

直方图

x = [1,2,3,4,5,1.1,1.2,1.3]
plt.hist(x)
plt.show()

在这里插入图片描述

# 正态分布
data = np.random.normal(0,1,100000)
plt.hist(data,bins=200)  
plt.show()

在这里插入图片描述

  • 0
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值