我怎么能在 python 中关闭一个情节然后重新打开它?

手动挡

所以我有这个代码:

plt.style.use('bmh')
fig = plt.figure(figsize=(10,5))
ax = fig.add_subplot(111)
ax.plot(months, monthly_profit, 'b-',lw=3)
plt.xlabel('Monthhs')
plt.ylabel('Profit')
plt.yticks(np.arange(10000,25000,step=1500))
plt.title('Profit Chart')
play = True
while play:
  x = int(input("State your choise : "))
  if x == 3:
    plt.show()
  print("Would you like to continue? YES or NO?")
  y = input()
  if y == "NO":
    play = False
  plt.close("all")

似乎它根本没有关闭情节。不是 close('all') ,也不是 close()。我想要的是能够打开它并保持打开状态,直到用户说出他的答案,然后再关闭它。有什么帮助吗?:D

亨利伍迪

您的绘图未关闭的原因是因为plt.show()阻止了执行,因此您的代码甚至没有到达该plt.close("all")行。要解决此问题,您可以plt.show(block=False)在调用show.

要重新打开绘图并让您的循环按照您的预期工作,您需要将绘图创建逻辑移到while循环内。但是请注意,plt.style.use('bmh')不得将其放置在此循环中。

下面是一个例子:

import matplotlib.pyplot as plt
import numpy as np

# sample data
months = [1,2,3]
monthly_profit = [10, 20, 30]

plt.style.use('bmh')

play = True
while play:
  fig = plt.figure(figsize=(10,5))
  ax = fig.add_subplot(111)
  ax.plot(months, monthly_profit, 'b-',lw=3)
  plt.xlabel('Monthhs')
  plt.ylabel('Profit')
  plt.yticks(np.arange(10000,25000,step=1500))
  plt.title('Profit Chart')

  x = int(input("State your choise : "))
  if x == 3:
    plt.show(block=False)
  print("Would you like to continue? YES or NO?")
  y = input()
  if y == "NO":
    play = False
  plt.close("all")

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

我有一个列减法我怎么能在python中做到这一点

我怎么能在Python的集合中添加布尔值False而不是True?

我怎么能在 kotlin 中拆分字符串

我有一个格式为“12/Sep/21”的日期字符串。我想将格式更改为“2021-09-12”。我怎么能在python中做到这一点?

我怎么能在一台机器多个localhosts?

我怎么能在最终结果中不记录 0

我怎么能在 laravel 8 中雄辩地写这个查询

我怎么能循环代码,直到用户输入改变Python中的变量

如果在csv python中找不到单词,我的代码怎么能“通过”

我怎么能在 Vuejs 的上下文中只有一个组件而不是不同的组件

我怎么能在这个游戏中添加一个在静态平台上方产生的硬币?

我想计算哪些情绪会影响情绪我怎么能在 R 中做到这一点?

MySQL的选择查询结果为空,所以我怎么能在PHP中返回默认值

我怎么能在输入中设置一个有限的数字并使它们只成为数字,我不想要符号

你怎么能在谷歌地图的类中创建一个变量而不是空值?

我试图在循环中每 10 毫秒将数据插入到数据库中。那么我怎么能在每次插入之间等待

我怎么能洗牌 python 无限生成器

在一个Perl脚本中,我可以关闭然后重新打开STDIN吗?

当我自动提交从它创建一个无限循环我怎么能停止

我怎么能在 React 中完成某种全局状态,这么多页面/类可以用按钮更新这个布尔状态

你怎么能在 X 秒内执行一个命令?

你怎么能在你停止说话的时候阻止一个程序听?

我怎么能把它转换成 C++

我怎么能拥有它,以便每次在用 python 制作的 Discord bot 上发送消息时它都会添加 exp

我怎么能用Ansible打开一个SSH外壳来远程控制?

如果一个 CPU 内核有两个线程,那么如果不是 25 核 CPU,我们怎么能说 python 中的循环一次发送 50 个请求?

我怎么能写在Java中的JPanel的边框文本?

我怎么能从字典中称呼__missing__

我怎么能完全从tty中截屏?