Python——matplotlib(1)

使用matplotlib绘制一个简单的二维图,用到的功能包括:

设置标题

控制线形,颜色

调整四条边框构成坐标轴

标定数轴

设置图例

部分填充

点标识

加网格


———————————————代码——————————


import numpy as np

import matplotlib.pyplot as plt        #pyplot是matplotlib绘制二位图像核心函数


x=np.linspace(-np.pi,np.pi,256,endpoint=True)    #定义x范围以及是否包含最后一个点
c,s=np.cos(x),np.sin(x)                                       #计算sin,cos作为y1,y2
plt.figure(1)                                                    #绘制图1
plt.plot(x,c,color="blue",linewidth=1.0,linestyle="-",label="COS",alpha=0.5) #alpha为透明度                  #绘图
plt.plot(x,s,"r*",label="SIN")                         #r*表示线形为*
plt.title("COS & SIN")                                  #标题
ax=plt.gca()                                                #启动轴编辑器
ax.spines["right"].set_color("none")              #把右边上边的轴透明化,即是消除
ax.spines["top"].set_color("none")
ax.spines["left"].set_position(("data",0))        #把位置设到数据域的零位置
ax.spines["bottom"].set_position(("data",0))
ax.xaxis.set_ticks_position("bottom")            #设置位置
ax.yaxis.set_ticks_position("left")
plt.xticks([-np.pi,-np.pi/2,0,np.pi/2,np.pi],
           [r'$-\pi$',r'$-\pi/2$',r'$0$',r'$+\pi/2$',r'$+\pi/2$']) #需要指定两个数组,第一个是标识的位置,第二个是标识的内容
plt.xticks(np.linspace(-1,1,5,endpoint=True))                   #y只需要给出数字就行了
for label in ax.get_xticklabels()+ax.get_yticklabels():         #设置大小
    label.set_fontsize(6)
    label.set_bbox(dict(facecolor="white",edgecolor="None",alpha=0.2))
plt.legend(loc="upper left")
#plt.axis([-1,1,-0.5,1])                              #指定显示范围 前边是横着后边纵轴
#plt.fill_between(x,np.abs(x)<0.5,c,c>0.5,color="green",alpha=0.25)                 #对指定区域填充
t=1
plt.plot([t,t],[0,np.cos(t)],"y",linewidth=3,linestyle="--")
plt.annotate("cos(1)",xy=(t,np.cos(1)),xycoords="data",xytext=(+10,+30),textcoords='offset points',arrowprops=dict(arrowstyle="->",connectionstyle="arc3,rad=.2"))
           #在1,1点加上一个注释,注释的位置需要相对偏移,最后再加上一个箭头,需要给定弧度和角度
plt.grid()              #加上网格
plt.show()
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值