python数据可视化技术关于正弦余弦曲线图部分区域颜色填充的方法

在Python中,我们可以使用matplotlib库来绘制正弦和余弦曲线,并使用fill_between函数来填充曲线的某个区域。以下是一个简单的示例:

import numpy as np 
import matplotlib.pyplot as plt 


# 创建一个从0到4π的等差数列,步长为0.01 
x = np.arange(0, 4*np.pi, 0.01) 


# 计算对应的正弦和余弦值 
sin_x = np.sin(x) 
cos_x = np.cos(x) 


# 创建一个新的图形 
fig, ax = plt.subplots() 


# 绘制正弦和余弦曲线 
ax.plot(x, sin_x, label='sin(x)') 
ax.plot(x, cos_x, label='cos(x)') 


# 添加图例 
ax.legend() 


# 定义一个布尔数组,表示需要填充的区域(这里我们填充0到π之间的区域) 
fill_between_condition = (x >= 0) & (x <= np.pi) 


# 使用fill_between函数填充该区域,颜色为蓝色 
ax.fill_between(x, sin_x, where=fill_between_condition, color='b') 


# 显示图形 
plt.show()

在这个例子中,我们首先创建了一个从0到4π的等差数列,然后计算了对应的正弦和余弦值。然后我们创建了一个新的图形,并绘制了正弦和余弦曲线。然后我们定义了一个布尔数组,表示需要填充的区域(这里我们填充0到π之间的区域),然后使用fill_between函数填充该区域,颜色为蓝色。最后,我们显示了图形

实验:

这段代码是使用Python的NumPy和Matplotlib库来绘制cosine和sine函数的图形,并添加了一些额外的注释和特性。以下是代码的详细注释:


	# 导入需要的库 

	import numpy as np 

	import matplotlib.pyplot as plt 

	


	# 创建一个从-π到π的等差数列,包含256个点,endpoint=True表示包括π和-π 

	x = np.linspace(-np.pi, np.pi, 256, endpoint=True) 

	# 计算x对应的cosine和sine值 

	y_cos, y_sin = np.cos(x), np.sin(x) 

	


	# 设置图的标题为"Cos & Sin" 

	plt.title("Cos & Sin") 

	# 设置x轴的刻度为指定的值,并添加对应的标签 

	plt.xticks([-np.pi, -np.pi/2, 0, np.pi/2, np.pi], [r'$-\pi$', r'$-\pi/2$', 0, r'$\pi/2$', r'$\pi$']) 

	# 设置y轴的刻度为指定的值 

	plt.yticks([-1.0, -0.5, 0, 0.5, 1]) 

	# 绘制cosine函数的图形 

	plt.plot(x, y_cos) 

	# 绘制sine函数的图形 

	plt.plot(x, y_sin) 

	# 在图上添加网格线,线宽为0.3 

	plt.grid(axis='both', lw=0.3) 

	# 添加图例,显示为'COS'和'SIN',位置在左上角 

	plt.legend(['COS', 'SIN'], loc='upper left') 

	# 使用fill_between函数填充sine和cosine曲线之间的区域,条件是sine值小于cosine值,颜色为红色 

	plt.fill_between(x, y_sin, y_cos, where=y_sin < y_cos, color='r') 

	# 使用annotate函数在图上添加注释,箭头指向cos(1)的位置,起点在(π/3, 0.55),终点在(π/3, 1),箭头样式为-> 

	plt.annotate("cos(1)", xy=(np.pi/3, 0.55), xytext=((np.pi/3), 1), arrowprops=dict(arrowstyle="->")) 

	


	# 显示图形 

	plt.show()

此代码主要用于可视化cosine和sine函数,以及在特定点进行注释。结果如下:

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值