帮我写一个基于pandas numpy 库和python语言进行数据处理 最后并用Matplotlib库来进行可视化。首先要读取在 D大學大二下學期數據可視化期末作業數據整理被引次數xlsx里的excel檔数据并对档案中的被引频次进行大到小的排序并抽出排在前十的数据可视化图上要显示中文字符X轴上显示数据的序号以上数据用柱状图进行可视化。第二从抽取的被引频次前十数据中显示其年份並进行可视化用柱状图
以下是基于pandas、numpy和matplotlib库的数据处理和可视化代码:
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
# 读取Excel文件
data = pd.read_excel(r'D:\大學\大二\下學期\數據可視化\期末作業\數據整理\被引次數.xlsx')
# 对"被引频次"进行排序并抽取前十条数据
top_ten = data.sort_values(by='被引频次', ascending=False).head(10)
# 可视化排名前十的数据
plt.figure(figsize=(10, 6))
plt.bar(top_ten.index, top_ten['被引频次'], color='blue')
plt.xlabel('序号')
plt.ylabel('被引频次')
plt.xticks(top_ten.index, top_ten['序号'], rotation=45, ha='right')
plt.title('排名前十的数据')
plt.show()
# 提取排名前十的年份数据
years = top_ten['年份']
# 可视化年份数据
plt.figure(figsize=(10, 6))
plt.bar(top_ten.index, years, color='red')
plt.xlabel('序号')
plt.ylabel('年份')
plt.xticks(top_ten.index, top_ten['序号'], rotation=45, ha='right')
plt.yticks(np.arange(2012, 2023))
plt.title('排名前十的年份数据')
plt.show()
# 合并柱状图
fig, ax1 = plt.subplots(figsize=(10, 6))
ax2 = ax1.twinx()
# 绘制被引频次柱状图
ax1.bar(top_ten.index, top_ten['被引频次'], color='blue')
ax1.set_xlabel('序号')
ax1.set_ylabel('被引频次')
ax1.set_xticks(top_ten.index)
ax1.set_xticklabels(top_ten['序号'], rotation=45, ha='right')
# 绘制年份柱状图
ax2.bar(top_ten.index, years, color='red')
ax2.set_ylabel('年份')
ax2.set_yticks(np.arange(2012, 2023))
plt.title('排名前十的数据与年份')
plt.show()
请注意,根据实际情况,你可能需要调整Excel文件的路径和列名
原文地址: http://www.cveoy.top/t/topic/hyTA 著作权归作者所有。请勿转载和采集!