Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/list/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 一个列出另一个的百分比_Python_List_Graph_Plot_Percentage - Fatal编程技术网

Python 一个列出另一个的百分比

Python 一个列出另一个的百分比,python,list,graph,plot,percentage,Python,List,Graph,Plot,Percentage,我试图绘制两个列表,其中我的TTS列表是卷列表的百分比。例如,当TTS为100时,这是15的100%,或者在两个列表之间的相同位置列出的任何值。作为一个新手程序员,我不知道该怎么做。我在尝试使用列表和计算彼此的百分比时遇到了麻烦,我应该如何处理这个问题?谢谢 import numpy as np import matplotlib.pyplot as plt def percentage(percent, whole): return (percent * whole) / 100.0

我试图绘制两个列表,其中我的TTS列表是卷列表的百分比。例如,当TTS为100时,这是15的100%,或者在两个列表之间的相同位置列出的任何值。作为一个新手程序员,我不知道该怎么做。我在尝试使用列表和计算彼此的百分比时遇到了麻烦,我应该如何处理这个问题?谢谢

import numpy as np
import matplotlib.pyplot as plt

def percentage(percent, whole):
  return (percent * whole) / 100.0

Volume = [0,15,15,15,20,25,30,35,40,50,55,60,65,70,75,80,85,90,95,100]
TTS = [0,100,100,100,100,100,100,100,92,86,83,80,78,77,74,73,72,72,68,65]

plt.xticks([0,10,20,30,40,50,60,70,80,90,100])
plt.yticks([0,10,20,30,40,50,60,70,80,90,100])

plt.plot(TTS, 'c', linewidth=3.0, label='TTS')
plt.plot(Volume, 'r', linewidth=3.0, label='Volume')

plt.legend()
plt.grid(True)
plt.show()

您的意思是要绘制以下图形:

plt.plot([percentage(tts, vol) for vol, tts in zip(Volume, TTS)])
使用地图:

def percentage(percent, whole):
  return (percent * whole) / 100.0

Volume = [0,15,15,15,20,25,30,35,40,50,55,60,65,70,75,80,85,90,95,100]
TTS = [0,100,100,100,100,100,100,100,92,86,83,80,78,77,74,73,72,72,68,65]

print map(percentage,Volume,TTS)
输出:

[0.0, 15.0, 15.0, 15.0, 20.0, 25.0, 30.0, 35.0, 36.8, 43.0, 45.65, 48.0, 50.7, 53.9, 55.5, 58.4, 61.2, 64.8, 64.6, 65.0]

将音量和TTS的元素传递到相应位置的percentage函数,percentage的返回值存储为结果列表。例如,15的100%是15,同样地,72的90%是64.8(最后三个元素)

您希望在绘图中显示什么?当我绘制我所拥有的内容时,体积看起来是正确的,但TTS会在体积上拍摄,然后返回,这是不应该的。我试着画出TTS实际上是音量的一个百分比。好吧,这正是我在回答中所说的。这可能是正确的,我在使用该图时只看到了一行,而不是TTS行。谢谢你的帮助,我会接受你的回答。这会更温暖,但我希望TTS的数量在40时开始下降,而TTS现在是40的92%,然后TTS继续下降,随着音量继续上升。我认为你的预期是错的:40的92%仍然是35的100%以上,所以当然情节仍然会上升。这很有帮助,也是一个很好的了解功能。它的价值在于它的输出并没有描绘出我所追求的,所以也许我问错了我的问题,这是新手问题的一部分。例如,15的100%是15(这很好,我正在尝试绘制),但我不想将另一个列表转换成一个百分比,其中72的90%是64.8(最后三个元素)。我想表明,在95时,我是95的72%。你的意思是“我想表明,在90时,我是95的72%?当音量为90时,TTS是90的72%。当体积为95时,它是95的68%。不知道该怎么解释。我不认为你的编辑是有意的,我相信你最初的答案是正确的。是的,这很有效!谢谢你教我新东西!可以选择两个工作答案吗?我选择另一个答案的唯一原因是他先回答,然后提供了它的情节。