Science Score: 44.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
    Found CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
  • Academic publication links
  • Academic email domains
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (2.1%) to scientific vocabulary
Last synced: 6 months ago · JSON representation ·

Repository

Basic Info
  • Host: GitHub
  • Owner: leledaidai
  • Language: Python
  • Default Branch: main
  • Size: 18.5 MB
Statistics
  • Stars: 0
  • Watchers: 0
  • Forks: 0
  • Open Issues: 0
  • Releases: 0
Created 9 months ago · Last pushed 9 months ago
Metadata Files
Readme Citation

README.md

论文管理系统

一个基于Flask的现代化论文管理系统,帮助研究人员高效管理学术文献、追踪引用关系、统计工作量。

功能特点

1. 文献管理

  • 📝 添加、编辑、删除文献信息
  • 🔍 多维度搜索(标题、作者、期刊、分类)
  • 📊 分类管理(CCF-A/B/C、SCI、EI等)
  • 📑 PDF文件管理(上传、在线预览)
  • 📤 数据导出(Excel格式)

2. 引用关系

  • 🔗 可视化引用网络
  • 📈 动态展示文献间的引用关系
  • 🎨 智能布局,清晰展示引用强度

3. 工作量统计

  • 👥 作者工作量统计
  • 📊 分类权重计算
  • 📈 数据可视化展示
  • 📤 统计结果导出

4. 用户界面

  • 🎨 现代化UI设计
  • 📱 响应式布局
  • ⚡ 流畅的交互体验
  • 🎯 直观的操作方式

技术栈

  • 后端框架:Flask
  • 数据库:SQLite
  • 前端框架:Bootstrap 5
  • 数据可视化:Matplotlib, NetworkX
  • 数据处理:Pandas
  • 其他技术
    • HTML5/CSS3
    • JavaScript
    • Bootstrap Icons
    • Font Awesome

系统要求

  • Python 3.7+
  • 现代浏览器(Chrome, Firefox, Edge等)

安装部署

  1. 克隆项目

bash git clone https://github.com/leledaidai/Project_paper_system.git cd paper-management-system

  1. 安装依赖

bash pip install -r requirements.txt

  1. 运行应用

bash python app.py

使用说明

  1. 文献管理
  • 点击"添加文献"添加新文献
  • 使用搜索框进行多维度搜索
  • 在管理页面进行编辑、删除操作
  1. 引用关系
  • 在关系图谱页面添加引用关系
  • 查看文献间的引用网络
  • 分析引用强度分布
  1. 工作量统计
  • 查看作者工作量统计
  • 导出统计数据
  • 分析研究产出
  1. PDF管理
  • 上传文献PDF文件
  • 在线预览PDF
  • 管理本地PDF文件

Owner

  • Login: leledaidai
  • Kind: user

Citation (citation_network.py)

import sqlite3
import networkx as nx
import matplotlib
matplotlib.use('Agg')
import matplotlib.pyplot as plt
import os
import matplotlib.font_manager as fm

# # 最简单有效的配置(适合本地开发环境)
# plt.rcParams['font.sans-serif'] = ['SimHei', 'SimSun', 'Microsoft YaHei']
# plt.rcParams['axes.unicode_minus'] = False

# 加载本地中文字体文件
font_path = "./fonts/SimHei.ttf"  
my_font = fm.FontProperties(fname=font_path)

print(f"使用字体:{my_font.get_name()}")

def draw_citation_graph():
    conn = sqlite3.connect("paper.db")
    cur = conn.cursor()

    cur.execute("SELECT citing_id, cited_id FROM citations")
    edges = cur.fetchall()

    G = nx.DiGraph()
    G.add_edges_from(edges)

    if not G.nodes:
        print("⚠️ 没有引用数据,请先手动添加引用关系。")
        return

    pos = nx.kamada_kawai_layout(G)

    plt.figure(figsize=(10, 6))
    nx.draw_networkx(
        G,
        pos=pos,
        with_labels=True,
        node_color='lightblue',
        edge_color='gray',
        font_size=10,
        font_properties=my_font  # 使用我们手动加载的字体
    )
    plt.title("引用网络图")
    plt.tight_layout()

    os.makedirs("static", exist_ok=True)
    plt.savefig("static/graph.png", format="png", bbox_inches="tight")
    plt.close()
    conn.close()

# 调用函数
draw_citation_graph()

GitHub Events

Total
  • Push event: 5
  • Create event: 4
Last Year
  • Push event: 5
  • Create event: 4