# echarts — 金融数据可视化平台

A 股基本面分析和宁波房地产数据可视化平台，基于 PHP + ECharts + MySQL + TuShare API。

## 主要功能

### 个股分析

| 页面 | 功能 |
|------|------|
| 股价 VS PE/PB/PS 趋势 | 股票收盘价与估值指标（市盈率/市净率/市销率）的历史对比 |
| 股价 VS EP | 股价与盈利能力（Earnings Power）趋势分析 |
| 股价 VS 股息率 | 股票价格与股息率的历史走势对比 |
| 股价 VS 融资融券余额 | 个股价格与融资融券余额的关系分析 |
| 股价 VS 北向资金持股 | 股票价格与沪深港通北向资金持股变化 |
| 股价 VS 机构持仓趋势 | 基金、QFII、社保、券商、保险、信托六类机构的持仓变化 |
| 个股基本面数据 | 财务报表数据表格展示（资产负债表、利润表、现金流量表关键指标） |
| 个股交易记录 | 个人交易记录导入、查询、分析（支持方正证券/长江证券），含做T收益计算 |

### 指数分析

| 页面 | 功能 |
|------|------|
| 指数 VS PE/PB/PS/市值 | 上证/深证/中小板/创业板/上证50/沪深300/中证500/北证50的估值与市值趋势 |
| 指数 VS 机构持仓趋势 | 各指数对应成分股的机构持仓汇总变化 |
| 指数 VS 两市总市值 | 指数点位与沪深两市总市值对比 |
| 指数 VS 融资余额 | 指数走势与全市场融资余额的关系 |
| 指数 VS 沪深港通资金流向 | 指数与北向/南向资金、港股通资金流向的对比分析 |

### 房地产（宁波）

| 页面 | 功能 |
|------|------|
| 房地产挂牌数量趋势 | 宁波各区县二手房挂牌数量变化趋势 |
| 新房每日成交量 | 宁波各区县新房每日成交面积和套数（日/月维度） |
| 二手房每日成交量 | 宁波各区县二手房成交面积和套数（日/月维度） |
| 二手房每日挂牌量 | 宁波各区县二手房每日新增挂牌套数和均价 |

### 其他模块

- **新闻联播分析**（`news/`）：CCTV 新闻联播内容抓取与关键词分析
- **研究报告**（`research/`）：AI 产业链、锂矿、新能源等行业深度研究报告（含 PDF 和 HTML 版本）

## 技术栈

- **后端**：PHP 8.4，无框架
- **前端**：ECharts 5.4、jQuery 3.6、Tailwind CSS 3.4、DataTables 1.13、Font Awesome 6.4
- **数据库**：MySQL，通过 `mysqli` 连接
- **外部 API**：TuShare（`api.tushare.pro` / `api.waditu.com`）
- **数据来源**：宁波市房产交易服务信息网（`cnnbfdc.com`）

## 项目结构

```
├── index.php / index-2.php     # 入口导航页
├── charts/                     # 数据可视化页面（21个）
├── inc/                        # PHP 核心代码
│   ├── config.php              # DB连接、db_query()、jsonResponse()
│   ├── getData.inc.php         # 数据查询（指数、持仓、资金流向）
│   ├── getBasic.inc.php        # PE/PB/PS/市值查询、TuShare API
│   ├── getEstate.inc.php       # 房地产数据查询
│   ├── getFinanceData.class.php # 财务报表 API 调用
│   ├── functions.inc.php       # 共享组件、callTushareApi()
│   ├── widgets.inc.php         # HTML 组件（下拉列表等）
│   ├── tradeRec.inc.php        # 交易记录查询与分析
│   ├── ajax.inc.php            # AJAX 端点
│   ├── excelOperate.inc.php    # Excel/CSV 读取
│   └── postJson.inc.php        # JSON HTTP POST
├── lib/                        # 第三方库
│   ├── js/                     # JS 库（jQuery、ECharts、DataTables 等）
│   ├── css/                    # CSS 库（Font Awesome、DataTables）
│   └── webfonts/               # 字体文件
├── js/                         # 页面专属图表 JS
├── css/                        # 自定义样式
├── html/                       # 公共 HTML 头部/底部
├── news/                       # 新闻联播分析模块
├── research/                   # 研究报告模块
└── deprecated/                 # 已废弃的旧页面
```

## 数据流

```
用户请求 → .php 页面（charts/）
  → inc/*.php 查询 MySQL 或调用 TuShare API
  → json_encode() 注入 <script> 标签
  → js/*.js 读取 window.chartConfig 或 fetch API
  → ECharts 渲染交互式图表
```

## 开发环境

- **本地 PHP**：`d:\software\php8.4\`
- **部署**：`sync-echart`（ssh + tar 同步到 `www.doorcome.cn:/var/www/html/echart/`）
- **调试**：XDebug 端口 9000（VS Code 配置 `.vscode/launch.json`）
- **代码指引**：见 `CLAUDE.md` 和 `AGENTS.md`
