当前位置: 首页 > news >正文

《数据分析与可视化》(清华)ch-6 作业 三、绘图题

1.根据如下绘制写出相应的代码。

1.绘制函数:y=sin(x),y=cos(x),x=np.linspace(-np.pi,np.pi,256,endpoint=Ture)
2.绘制填充区域:
紫色区域:(-2.5<x)&(x<0.5)
绿色区域:np.abs(x)<0.5,sin(x)>0.5
紫色的设置:color=‘purple’

答案:

修改后的代码:

import matplotlib.pyplot as plt
import numpy as npplt.rcParams['font.sans-serif'] = ['SimHei']
plt.rcParams['axes.unicode_minus'] = Falsex = np.linspace(-np.pi, np.pi, 256, endpoint=True)
sin, cos = np.sin(x), np.cos(x)plt.plot(x, sin, "b-", lw=2.5, label="正弦 Sin()")
plt.plot(x, cos, "r-", lw=2.5, label="余弦 Cos()")plt.xlim(x.min() * 1.5, x.max() * 1.5)
plt.ylim(cos.min() * 1.5, cos.max() * 1.5)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])ax = plt.gca()
ax.spines['right'].set_color('none')
ax.spines['top'].set_color('none')ax.xaxis.set_ticks_position('bottom')
ax.spines['bottom'].set_position(('data', 0))
ax.yaxis.set_ticks_position('left')
ax.spines['left'].set_position(('data', 0))plt.legend(loc="upper left", fontsize=12)t1 = -np.pi
t2 = 2 * np.pi / 3plt.scatter([t1,], [np.cos(t1),], 50, color='b')
plt.scatter([t2,], [np.sin(t2),], 50, color='r')plt.annotate(r'$\sin(\frac{2\pi}{3})=\frac{\sqrt{3}}{2}$',xy=(t2, np.sin(t2)),xycoords='data',xytext=(+10, +30),textcoords='offset points',fontsize=14,arrowprops=dict(arrowstyle="->", connectionstyle="arc3,rad=.2"))for label in ax.get_xticklabels() + ax.get_yticklabels():label.set_fontsize(18)plt.fill_between(x, np.abs(x) < 0.5, sin, sin > 0.5, color='g', alpha=0.8)
plt.fill_between(x, cos, where=(-2.5 < x) & (x < -0.5), color='purple')
plt.text(4.5,1,'Povchar',fontsize=15,alpha=0.3,color='gray',bbox=dict(fc="white",boxstyle='round',edgecolor='gray',alpha=0.3))
plt.grid()
plt.show()

运行结果:

声明:文章仅供学习使用。著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。  

http://www.xdnf.cn/news/304201.html

相关文章:

  • 解决Centos连不上网
  • 数字图像相关法在薄板变形测量中的实践
  • 《Python星球日记》第34天:Web 安全基础
  • Cadence学习笔记之---PCB工程创建、类与子类、颜色管理器介绍
  • 【Python】--实现多进程
  • 2.4线性方程组
  • 使用batch脚本调用另一个batch脚本遇到的问题
  • 【Linux网络编程十一】网络原理之数据链路层
  • 【HTML5】显示-隐藏法 实现网页轮播图效果
  • 【LDM】视觉自回归建模:通过Next-Scale预测生成可扩展图像(NeurIPS2024最佳论文阅读笔记与吃瓜)
  • 第七节:图像基本操作-图像属性获取 (尺寸、通道数、数据类型)
  • C++【STL】(1)string
  • 基于STM32、HAL库的W25X40CLSNIG NOR FLASH存储器驱动应用程序设计
  • 【Linux系统】线程安全
  • unix 详解
  • cuda多维线程的实例
  • 纷析云开源财务软件:重新定义企业财务自主权
  • 《Python星球日记》第35天:全栈开发(综合项目)
  • 基于 Flask的深度学习模型部署服务端详解
  • Linux 工具
  • docker + K3S + Jenkins + Harbor自动化部署
  • Opentack基础架构平台运维
  • iPhone或iPad想要远程投屏到Linux系统电脑,要怎么办?
  • react-12父子组件间的数据传递(子传父)(父传子)- props实现
  • Axure :列表详情、列表总数
  • Spring Boot 3.x集成SaToken使用swagger3+knife4j 4.X生成接口文档
  • 开源与商业:图形化编程工具的博弈与共生
  • ExtraMAME:复古游戏的快乐“时光机”
  • 信息论01:从通信到理论的飞跃
  • 第七章,VLAN技术