matplotlib绘图标记及注释

此篇博客展示了如何使用Python Matplotlib库绘制余弦和正弦函数,并通过注解详细解释了特定角度的函数值。通过实例演示了如何设置轴线、标签和图例,以及如何利用箭头和文本创建交互式解释。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

import numpy as np
import matplotlib.pyplot as plt

from pylab import *

figure(figsize=(8,5),dpi=80)

ax=plt.subplot(111)

ax.spines['right'].set_color('none')
ax.spines['top'].set_color('none')
ax.spines['bottom'].set_position(('data',0))
ax.spines['left'].set_position(('data',0))


X = np.linspace(-np.pi, np.pi, 256,endpoint=True)
C,S = np.cos(X), np.sin(X)

plot(X, C, color="blue", linewidth=2.5, linestyle="-",label='cosine',zorder=-1)
plot(X, S, color="green", linewidth=2.5, linestyle="-",label='sine',zorder=-1)

xlim(X.min()*1.1,X.max()*1.1)
ylim(C.min()*1.1,C.max()*1.1)

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$'])
plt.yticks([-1, 0, +1],[r'$-1$', r'$0$', r'$+1$'])

legend(loc='upper left',frameon=False)

t=2*np.pi/3

plot([t,t],[0,np.cos(t)],color='blue',linewidth=1.5,linestyle='--')
scatter(t,np.cos(t),50,color='blue')

annotate(r'$\cos(\frac{2\pi}{3})=-\frac{1}{2}$',
         xy=(t,np.cos(t)),
         xytext=(-90,-50),textcoords='offset points',fontsize=16,
         arrowprops=dict(arrowstyle='->',connectionstyle='arc3,rad=.2'))

plot([t,t],[0,np.sin(t)],color='g',linewidth=1.5,linestyle='--')
scatter(t,np.sin(t),50,color='green')

annotate(r'$\sin(\frac{2\pi}{3})=\frac{\sqrt{3}}{2}$',
         xy=(t,np.sin(t)),
         xytext=(10,30),textcoords='offset points',fontsize=16,
         arrowprops=dict(arrowstyle='->',connectionstyle='arc3,rad=.2'))

for label in ax.get_xticklabels() + ax.get_yticklabels():
    label.set_fontsize(16)
    label.set_bbox(dict(facecolor='white', edgecolor='None', alpha=0.65 ))

plt.show()
 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值