weixin_57377772 2023-03-05 19:31 采纳率: 56.3%
浏览 38
已结题

python 使用matplotlib绘制图像

python 使用matplotlib 绘制cos函数图像带有辅助线。为什么只出来cos图像没有辅助线呢?语句在下方请帮我解答

import matplotlib.pyplot as plt
import numpy as np
x = np.linspace(0.05,10,1000)
y = np.cos(x)
plt.plot(x,y,ls="-",lw=2,label="plot figure")
plt.legend()
plt.show()
plt.xlim(0,10)
plt.ylim(-1.3,1.3)
plt.xlabel("x")
plt.ylabel("y")
plt.grid(axis="y")
plt.show()
plt.grid(linestyle=":",color="r")
plt.axhline(y=0.0,c="r",ls="--",lw=2)
plt.axvline(x=5.0,c="r",ls="--",lw=2)
plt.axvspan(xmin=4.0,xmax=6.0,facecolor="y",alpha=0.3)
plt.axhspan(ymin=-0.3,ymax=0.3,facecolor="y",alpha=0.3)
plt.annotate("maximum",xy=(0,1.0),xytext=((np.pi/2)+0.15,1.5),weight="bold",color="b",arrowprops=dict(arrowstyle="->",connectionstyle="arc3",color="b"))
plt.text(2,0,"y=cos(x)",weight="bold",color="b")
plt.title("y=cos(x)")

例图是这样的:

img

  • 写回答

2条回答 默认 最新

  • 陈书予 2023年6月份城市(北京)之星TOP 1 2023-03-05 19:41
    关注

    这是因为在代码中,有多个 plt.show() 函数,而每次调用该函数时,会将前面创建的图形显示出来并清空当前图形。
    因此,在第一个 plt.show() 函数被调用之后,前面的图像被显示并清空,所以后面的辅助线和注释无法显示。
    如果您想要同时显示图像和辅助线,您可以将所有 plt 函数的调用放在一起,并且只调用一个 plt.show() 函数。例如:

    import matplotlib.pyplot as plt
    import numpy as np
    
    x = np.linspace(0.05,10,1000)
    y = np.cos(x)
    
    plt.plot(x, y, ls="-", lw=2, label="plot figure")
    plt.legend()
    plt.xlim(0,10)
    plt.ylim(-1.3,1.3)
    plt.xlabel("x")
    plt.ylabel("y")
    plt.grid(axis="y")
    
    plt.grid(linestyle=":",color="r")
    plt.axhline(y=0.0,c="r",ls="--",lw=2)
    plt.axvline(x=5.0,c="r",ls="--",lw=2)
    plt.axvspan(xmin=4.0,xmax=6.0,facecolor="y",alpha=0.3)
    plt.axhspan(ymin=-0.3,ymax=0.3,facecolor="y",alpha=0.3)
    plt.annotate("maximum",xy=(0,1.0),xytext=((np.pi/2)+0.15,1.5),weight="bold",color="b",arrowprops=dict(arrowstyle="->",connectionstyle="arc3",color="b"))
    plt.text(2,0,"y=cos(x)",weight="bold",color="b")
    plt.title("y=cos(x)")
    
    plt.show()
    

    这将显示带有图像和辅助线的完整图形。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
    1人已打赏
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 3月13日
  • 已采纳回答 3月5日
  • 创建了问题 3月5日

悬赏问题

  • ¥15 永磁直线电机的电流环pi调不出来
  • ¥15 用stata实现聚类的代码
  • ¥15 请问paddlehub能支持移动端开发吗?在Android studio上该如何部署?
  • ¥170 如图所示配置eNSP
  • ¥20 docker里部署springboot项目,访问不到扬声器
  • ¥15 netty整合springboot之后自动重连失效
  • ¥15 悬赏!微信开发者工具报错,求帮改
  • ¥20 wireshark抓不到vlan
  • ¥20 关于#stm32#的问题:需要指导自动酸碱滴定仪的原理图程序代码及仿真
  • ¥20 设计一款异域新娘的视频相亲软件需要哪些技术支持