用python写密码词频统计并画出折线图
时间: 2023-12-15 16:05:34 浏览: 29
以下是Python代码,用于统计密码中每个字符出现的频率,并绘制折线图:
```python
import matplotlib.pyplot as plt
from collections import Counter
password = input("请输入密码:")
password_freq = Counter(password) # 统计密码中每个字符出现的次数
x = list(password_freq.keys())
y = list(password_freq.values())
plt.plot(x, y)
plt.xlabel("字符")
plt.ylabel("出现次数")
plt.title("密码词频统计")
plt.show()
```
在运行代码时,用户需要输入他们的密码。然后,使用`Counter`函数计算每个字符在密码中出现的次数。将结果存储为两个列表,一个包含所有字符,另一个包含它们的出现次数。最后,使用`matplotlib`库中的`plot`函数绘制折线图。在图表中,每个字符都标记在X轴上,而出现次数则标记在Y轴上。
相关问题
python dataframe分组统计频数并画出折线图
可以使用 pandas 库中的 groupby 方法对 dataframe 进行分组统计频数,然后使用 matplotlib 库中的 plot 方法画出折线图。具体实现可以参考以下代码:
```python
import pandas as pd
import matplotlib.pyplot as plt
# 创建一个 dataframe
df = pd.DataFrame({'A': ['foo', 'bar', 'foo', 'bar', 'foo', 'bar', 'foo', 'foo'],
'B': ['one', 'one', 'two', 'three', 'two', 'two', 'one', 'three'],
'C': [1, 2, 3, 4, 5, 6, 7, 8]})
# 对 A 和 B 列进行分组统计频数
grouped = df.groupby(['A', 'B']).size()
# 画出折线图
grouped.plot(kind='line')
# 显示图形
plt.show()
```
这段代码会先创建一个 dataframe,然后对 A 和 B 列进行分组统计频数,最后画出折线图并显示出来。
python dataframe统计频数并画出折线图
可以使用 pandas 库中的 value_counts() 方法统计频数,再使用 matplotlib 库中的 plot() 方法画出折线图。具体代码如下:
```python
import pandas as pd
import matplotlib.pyplot as plt
# 创建 DataFrame
df = pd.DataFrame({'A': ['a', 'b', 'c', 'a', 'b', 'a', 'a', 'c', 'c', 'c']})
# 统计频数
counts = df['A'].value_counts()
# 画出折线图
counts.plot(kind='line')
# 显示图形
plt.show()
```
运行以上代码,即可得到频数统计折线图。