matplotlib画图基本使用

会记录一些最基本的matplotlib的使用方法,画一些诸如,条形图,折线图,散点图等
直接上代码,注释应有尽有…
也算是是学习唐宇迪课程的笔记

import pandas as pd
import numpy as np
unrate=pd.read_csv("pandas_data/unrate.csv")
unrate['DATE']=pd.to_datetime(unrate['DATE'])           #进行标准的时间转换,把时间转换成标准的时间格式
#print(unrate.head(12))

import matplotlib.pyplot as plt


#画一张失业率和月份的关系图
#plt.show()
first_twelve=unrate[:12]
plt.plot(first_twelve['DATE'],first_twelve['VALUE'])            #左边的就是x周,右边就是y轴
plt.xticks(rotation=45 )                                        #对横坐标显示的值进行一个旋转,因为横着写可能写不下
plt.xlabel('Month')                                             #指定坐标轴的名字
plt.ylabel('Unemployment Rate')                                 #指定y轴的名字
plt.title("A title")                                            #图形的名字
plt.show()

在这里插入图片描述

#画子图,一个图一条线
#fig.add_subplot(4,1,x)     4行一列, 从左到右,从上到下
fig1=plt.figure()
fig2=plt.figure(figsize=(3,6))              #指定大小 第一个是横向 第二个是纵向
ax1=fig1.add_subplot(2,2,1)
ax2=fig1.add_subplot(2,2,2)
ax3=fig1.add_subplot(2,2,4)                  #添加子图,2,2即两行两列,1,2,4即为第几个
#在不同子图上画图
ax1.plot(np.random.randint(1,10,5),np.arange(5))
ax2.plot(np.arange(10)*3,np.arange(10))
plt.show()

在这里插入图片描述

#一幅图画多条线 例1
unrate["MONTH"]=unrate["DATE"].dt.month
fig=plt.figure(figsize=(6,3))
plt.plot(unrate[0:12]["MONTH"],unrate[0:12]["VALUE"],c="red")
plt.plot(unrate[12:24]["MONTH"],unrate[12:24]["VALUE"],c="blue")
plt.show()

在这里插入图片描述

#给线条加备注
fig=plt.figure(figsize=(10,6))
colors=['red','blue','green','orange','black']
unrate["MONTH"]=unrate["DATE"].dt.month                             #这里把具体的日期舍去,而只保存月份
print(unrate["MONTH"])
for i in range(5):
    start=i*12
    end=i*12+12
    subset=unrate[start:end]
    label=str(1988+i)                                               #指定了label
    plt.plot(subset['MONTH'],subset['VALUE'],c=colors[i],label=label,linewidth=10)
plt.legend(loc="upper left")                                              #这个指令在图中加上显示板,显示线条的label。loc是指位置
plt.legend(loc="best")
#print(help(plt.legend))
plt.show()

在这里插入图片描述

#条形图
bar_heights=norm_reviews.ix[0,cols].values      #取出字表的第一行   作为高度
print(bar_heights)
bar_positions=np.arange(5)+1               #柱状图的位置,离左边有多远   作为位置
print(bar_positions)
fig,ax=plt.subplots()                       #声明子柱状图
#ax.bar(bar_positions,bar_heights,0.3)       #画图,0.3是柱宽,竖图
ax.barh(bar_positions,bar_heights,0.3)      #画个横图
plt.show()

在这里插入图片描述

#散点图
fig,ax=plt.subplots()
ax.scatter(norm_reviews["Fandango_Ratingvalue"],norm_reviews["RT_user_norm"])
print(norm_reviews["Fandango_Ratingvalue"])
print(norm_reviews["RT_user_norm"])
ax.set_xlabel('fandango')
ax.set_ylabel('rotten tomatoes')
plt.show()

在这里插入图片描述

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值