df_play = df[['title','play']].sort_values('play',ascending=False) # print(df_play[:10]) df_play = df_play[:10] _x = df_play['title'].tolist() _y = df_play['play'].tolist() df_play = get_matplot(x=_x,y=_y,chart='barh',title='网易云音乐华语歌单播放 TOP10',ha='left',size=8,color=color[0]) print(df_play)将此代码重新定义完整
时间: 2024-01-20 20:04:19 浏览: 148
音乐播放函数
这段代码使用 pandas 库对 DataFrame 进行操作,首先选取了 DataFrame 中的 'title' 和 'play' 两列数据,按照 'play' 列进行降序排列,选取前10行数据,然后将 'title' 和 'play' 列的值分别转换为列表类型 _x 和 _y。最后,调用自定义函数 get_matplot 生成一个水平条形图,并输出结果。
以下是完整的代码:
```python
import pandas as pd
import matplotlib.pyplot as plt
# 自定义函数,用于生成图表
def get_matplot(x, y, chart='bar', title='', ha='center', size=10, color='blue'):
plt.figure(figsize=(12, 6))
if chart == 'bar':
plt.bar(x, y, color=color)
elif chart == 'barh':
plt.barh(x, y, color=color)
plt.title(title, fontsize=size)
plt.xlabel('播放量', fontsize=size)
plt.ylabel('歌单名称', fontsize=size)
plt.xticks(fontsize=size)
plt.yticks(fontsize=size, ha=ha)
plt.grid(axis='x', linestyle='--', alpha=0.5)
plt.show()
# 读取数据
df = pd.read_csv('music.csv', encoding='utf-8')
# 对数据进行处理
df_play = df[['title','play']].sort_values('play',ascending=False)
df_play = df_play[:10]
_x = df_play['title'].tolist()
_y = df_play['play'].tolist()
# 生成图表
df_play = get_matplot(x=_x,y=_y,chart='barh',title='网易云音乐华语歌单播放 TOP10',ha='left',size=8,color='red')
```
阅读全文