Files
vf_react/public/htmls/涨价概念.html
2025-12-05 13:29:18 +08:00

509 lines
33 KiB
HTML
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<!DOCTYPE html>
<html lang="zh-CN" data-theme="night">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>涨价概念 - 深度投研报告 | 价小前投研</title>
<!-- Tailwind CSS & DaisyUI -->
<link href="https://cdn.jsdelivr.net/npm/daisyui@4.10.2/dist/full.min.css" rel="stylesheet" type="text/css" />
<script src="https://cdn.tailwindcss.com"></script>
<!-- Alpine.js -->
<script defer src="https://cdn.jsdelivr.net/npm/alpinejs@3.14.0/dist/cdn.min.js"></script>
<!-- ECharts -->
<script src="https://cdn.jsdelivr.net/npm/echarts@5.5.0/dist/echarts.min.js"></script>
<style>
/* Custom Styles for Sci-Fi FUI / James Turrell inspired look */
@keyframes gradient-animation {
0% { background-position: 0% 50%; }
50% { background-position: 100% 50%; }
100% { background-position: 0% 50%; }
}
body {
background: linear-gradient(-45deg, #000010, #0a001f, #13002d, #00000f);
background-size: 400% 400%;
animation: gradient-animation 25s ease infinite;
color: #e0e0e0;
font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif;
}
.glass-card {
background: rgba(20, 20, 45, 0.4);
backdrop-filter: blur(20px);
-webkit-backdrop-filter: blur(20px);
border: 1px solid rgba(100, 100, 220, 0.2);
box-shadow: 0 8px 32px 0 rgba(0, 0, 0, 0.37);
transition: all 0.3s ease;
}
.glass-card:hover {
background: rgba(30, 30, 65, 0.5);
border: 1px solid rgba(120, 120, 255, 0.3);
transform: translateY(-5px);
}
.bento-grid {
display: grid;
gap: 1rem;
}
.section-title {
font-size: 2.5rem;
font-weight: 800;
background: linear-gradient(90deg, #9333ea, #3b82f6, #84cc16);
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
padding-bottom: 0.5rem;
border-bottom: 1px solid rgba(120, 120, 255, 0.2);
margin-bottom: 2rem;
text-align: center;
}
.subtitle {
font-size: 1.25rem;
font-weight: 500;
color: #a5b4fc; /* Indigo-300 */
margin-bottom: 0.5rem;
}
/* DaisyUI Collapse Customization */
.collapse {
background: rgba(20, 20, 45, 0.4);
border: 1px solid rgba(100, 100, 220, 0.2);
}
.collapse-title {
color: #c7d2fe; /* Indigo-200 */
}
/* Table Customization */
.table thead th {
background-color: rgba(30, 30, 65, 0.6);
color: #e0e0e0;
border-bottom: 1px solid rgba(120, 120, 255, 0.3);
}
.table tbody tr:hover {
background-color: rgba(40, 40, 80, 0.5);
}
.table .sub-header th {
background-color: rgba(50, 50, 100, 0.3);
color: #c7d2fe;
text-align: left;
padding-left: 1.5rem;
font-weight: bold;
}
</style>
</head>
<body class="min-h-screen p-4 sm:p-8">
<div class="max-w-7xl mx-auto space-y-12">
<!-- Header -->
<header class="text-center py-8">
<h1 class="section-title">涨价概念 · 深度投研报告</h1>
<p class="text-indigo-300 mt-2">北京价值前沿科技有限公司 AI投研agent“价小前投研” 进行投研呈现</p>
<div class="badge badge-outline badge-error mt-4">本报告为AI合成数据投资需谨慎</div>
</header>
<!-- Insight Core -->
<main class="space-y-12">
<!-- Core Views & Conclusions in a Bento Grid -->
<section class="bento-grid md:grid-cols-3">
<div class="md:col-span-3 glass-card rounded-3xl p-6">
<h2 class="subtitle flex items-center gap-2">
<svg xmlns="http://www.w3.org/2000/svg" class="h-6 w-6 text-violet-400" fill="none" viewBox="0 0 24 24" stroke="currentColor"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M13 10V3L4 14h7v7l9-11h-7z" /></svg>
核心观点摘要
</h2>
<p class="text-gray-300">“涨价概念”当前正处于由点及面、跨行业扩散的关键阶段,其核心驱动力是<b>供给收缩、需求复苏尤其AI结构性需求与行业格局优化</b>三大因素的共振。这并非单纯的短期主题炒作,而是部分行业基本面出现显著拐点的体现,未来潜力取决于涨价的持续性以及成本能否顺利向下游传导,其中蕴含着<b>盈利弹性释放</b><b>需求被抑制</b>的博弈。</p>
</div>
<div class="md:col-span-2 glass-card rounded-3xl p-6">
<h2 class="subtitle flex items-center gap-2">
<svg xmlns="http://www.w3.org/2000/svg" class="h-6 w-6 text-sky-400" fill="none" viewBox="0 0 24 24" stroke="currentColor"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M9 19v-6a2 2 0 00-2-2H5a2 2 0 00-2 2v6a2 2 0 002 2h2a2 2 0 002-2zm0 0V9a2 2 0 012-2h2a2 2 0 012 2v10m-6 0a2 2 0 002 2h2a2 2 0 002-2m0 0V5a2 2 0 012-2h2a2 2 0 012 2v14a2 2 0 01-2 2h-2a2 2 0 01-2-2z" /></svg>
核心驱动力分析
</h2>
<ul class="list-disc list-inside space-y-2 text-gray-300">
<li><b>供给侧出清与主动收缩:</b> 核心驱动。存储巨头主动减产,化工行业检修限产,风电铸件产能瓶颈。</li>
<li><b>结构性需求爆发:</b> AI是关键变量驱动存力、高端CCL、高速铜箔等需求注入持续涨价动能。</li>
<li><b>行业竞争格局优化:</b> 快递业从"份额为王"转向"利润优先",金属铬龙头掌握定价权。</li>
<li><b>成本推动与政策干预:</b> 原材料成本传导,及制冷剂配额、贸易壁垒等政策创造涨价环境。</li>
</ul>
</div>
<div class="glass-card rounded-3xl p-6">
<h2 class="subtitle flex items-center gap-2">
<svg xmlns="http://www.w3.org/2000/svg" class="h-6 w-6 text-lime-400" fill="none" viewBox="0 0 24 24" stroke="currentColor"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M17.657 18.657A8 8 0 016.343 7.343S7 9 9 10c0-2 .5-5 2.986-7.014A8.003 8.003 0 0122 12c0 3-1 7-6 7a8.003 8.003 0 01-4.343-1.343z" /></svg>
关键催化剂 (未来3-6个月)
</h2>
<ul class="list-disc list-inside space-y-2 text-gray-300">
<li><b>存储芯片:</b> 验证三星/海力士Q2跟进涨价幅度。</li>
<li><b>快递行业:</b> 关注10月旺季二次提价落地情况。</li>
<li><b>化工品:</b> 关注节后及两会需求回暖与政策刺激。</li>
<li><b>财报业绩:</b> 中报/三季报验证"涨价逻辑"能否兑现为"盈利增长"。</li>
</ul>
</div>
</section>
<!-- Event Timeline -->
<section class="glass-card rounded-3xl p-6">
<h2 class="subtitle mb-6 flex items-center gap-2">
<svg xmlns="http://www.w3.org/2000/svg" class="h-6 w-6 text-amber-400" fill="none" viewBox="0 0 24 24" stroke="currentColor"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M8 7V3m8 4V3m-9 8h10M5 21h14a2 2 0 002-2V7a2 2 0 00-2-2H5a2 2 0 00-2 2v12a2 2 0 002 2z" /></svg>
概念演绎时间轴
</h2>
<ul class="timeline timeline-snap-icon max-md:timeline-compact timeline-vertical">
<li>
<div class="timeline-middle">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20" fill="currentColor" class="h-5 w-5 text-indigo-400"><path fill-rule="evenodd" d="M10 18a8 8 0 100-16 8 8 0 000 16zm.75-13a.75.75 0 00-1.5 0v5c0 .414.336.75.75.75h4a.75.75 0 000-1.5h-3.25V5z" clip-rule="evenodd" /></svg>
</div>
<div class="timeline-start md:text-end mb-10">
<time class="font-mono italic">2024年初至今</time>
<div class="text-lg font-black text-indigo-300">宏观发酵</div>
PPI同比转正行业占比从20%跃升至近40%,涨价成为重要投资线索,覆盖广度创历史新高。
</div>
<hr class="bg-indigo-400"/>
</li>
<li>
<hr class="bg-sky-400"/>
<div class="timeline-middle">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20" fill="currentColor" class="h-5 w-5 text-sky-400"><path fill-rule="evenodd" d="M10 18a8 8 0 100-16 8 8 0 000 16zm.75-13a.75.75 0 00-1.5 0v5c0 .414.336.75.75.75h4a.75.75 0 000-1.5h-3.25V5z" clip-rule="evenodd" /></svg>
</div>
<div class="timeline-end mb-10">
<time class="font-mono italic">2025-03-06</time>
<div class="text-lg font-black text-sky-300">存储芯片关键催化</div>
SanDisk发布客户通知明确自4月1日起全产品线涨价超10%,被市场解读为行业涨价周期的正式确立。
</div>
<hr class="bg-sky-400"/>
</li>
<li>
<hr class="bg-emerald-400"/>
<div class="timeline-middle">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20" fill="currentColor" class="h-5 w-5 text-emerald-400"><path fill-rule="evenodd" d="M10 18a8 8 0 100-16 8 8 0 000 16zm.75-13a.75.75 0 00-1.5 0v5c0 .414.336.75.75.75h4a.75.75 0 000-1.5h-3.25V5z" clip-rule="evenodd" /></svg>
</div>
<div class="timeline-start md:text-end mb-10">
<time class="font-mono italic">2025年8-9月</time>
<div class="text-lg font-black text-emerald-300">快递行业格局拐点</div>
行业自8月广东率先涨价9月全国铺开结束长期“内卷”式价格战。8月行业单票收入环比结束15连降。
</div>
<hr class="bg-emerald-400"/>
</li>
<li>
<hr class="bg-rose-400"/>
<div class="timeline-middle">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20" fill="currentColor" class="h-5 w-5 text-rose-400"><path fill-rule="evenodd" d="M10 18a8 8 0 100-16 8 8 0 000 16zm.75-13a.75.75 0 00-1.5 0v5c0 .414.336.75.75.75h4a.75.75 0 000-1.5h-3.25V5z" clip-rule="evenodd" /></svg>
</div>
<div class="timeline-end">
<time class="font-mono italic">2025-11-19</time>
<div class="text-lg font-black text-rose-300">政策/贸易事件驱动</div>
中国全面禁止日本水产品入境,直接导致国产三文鱼、海参等替代品“替代+涨价”逻辑兑现。
</div>
</li>
</ul>
</section>
<!-- Price Hike Distribution Chart -->
<section class="glass-card rounded-3xl p-6">
<h2 class="subtitle mb-6 flex items-center gap-2">
<svg xmlns="http://www.w3.org/2000/svg" class="h-6 w-6 text-fuchsia-400" fill="none" viewBox="0 0 24 24" stroke="currentColor"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M11 3.055A9.001 9.001 0 1020.945 13H11V3.055z"></path><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M20.488 9H15V3.512A9.025 9.025 0 0120.488 9z"></path></svg>
涨价概念细分领域热度分布
</h2>
<div id="echarts-distribution" class="w-full h-96"></div>
</section>
<!-- Evidence and Data -->
<section class="space-y-4">
<div class="collapse collapse-plus glass-card rounded-2xl">
<input type="radio" name="data-accordion" checked="checked" />
<div class="collapse-title text-xl font-medium">情报摘要:新闻 / 路演 / 研报</div>
<div class="collapse-content">
<div class="space-y-4 p-4">
<div>
<h4 class="font-bold text-lg text-indigo-300 mb-2">新闻数据核心发现</h4>
<ul class="list-disc list-inside text-gray-300 space-y-1">
<li><b>市场热度:</b>“涨价题材”成为市场关注焦点,并向有色、化工、农业扩散。</li>
<li><b>投资逻辑:</b>机构认为基于供需关系的涨价是“硬逻辑”,“涨出来的全是利润”。</li>
<li><b>涨价品种:</b>覆盖化工(硫磺/磷化工/铬盐)、有色(钴/锑/铝)、电子(存储芯片)、农产品(白羽鸡)、建材(水泥/玻璃)、光伏材料等。</li>
<li><b>关键事件:</b>SanDisk宣布全产品线涨价超10%光伏材料N型料、硅片、电池组件全线涨价。</li>
</ul>
</div>
<div>
<h4 class="font-bold text-lg text-sky-300 mb-2">路演情报精粹</h4>
<ul class="list-disc list-inside text-gray-300 space-y-1">
<li><b>化工:</b>金属铬策略从“压价抢份额”转为“量价齐升”;香兰素因海外反倾销税驱动涨价。</li>
<li><b>快递:</b>已完成第一轮全国性涨价(件量占比>90%)预计10月启动第二轮。</li>
<li><b>存储:</b>闪迪/三星/海力士等计划Q2跟进涨价预期涨幅10-15%,逻辑已验证。</li>
<li><b>风电:</b>铸件、叶片、轴承、齿轮箱等零部件环节普遍涨价5%-10%以上。</li>
<li><b>宏观:</b>超60%的细分行业价格环比企稳或上涨,覆盖广度创历史新高。</li>
</ul>
</div>
<div>
<h4 class="font-bold text-lg text-emerald-300 mb-2">研报核心洞察</h4>
<ul class="list-disc list-inside text-gray-300 space-y-1">
<li><b>化工:</b>丁苯橡胶、丁二烯等因装置检修/降负荷导致供应缩减,价格上涨。</li>
<li><b>热度追踪:</b>钛白粉、有机硅概念热度大幅提升,背后是供给收缩和需求回暖预期。</li>
<li><b>商品期货:</b>集运指数、碳酸锂、铁矿石、工业硅、纯碱等多个品种价格显著上涨。</li>
<li><b>政策催化:</b>海南自贸港政策、医保支付改革等可能间接或直接推动相关资产价格上涨。</li>
</ul>
</div>
</div>
</div>
</div>
</section>
<!-- Rise Analysis -->
<section>
<h2 class="subtitle text-2xl font-bold text-center mb-8">近期涨停复盘解析</h2>
<div class="grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-6">
<!-- Dynamic analysis cards will be inserted here -->
<script>
const riseAnalysisData = [
{"stock": "诚邦股份", "stock_code": "603316", "rise_rate": 10.07, "trade_date": "2025-06-26", "reason": "主要受益于存储芯片涨价潮和中报业绩预期向好的双重利好共振。公司主营半导体封装材料产品覆盖DDR4/DDR5直接受益于DDR4现货价暴涨。"},
{"stock": "金安国纪", "stock_code": "002636", "rise_rate": 10.02, "trade_date": "2025-08-28", "reason": "PCB覆铜板涨价与AI服务器订单高景气共振。7月以来CCL龙头密集提价公司主营直接受益。同时切入国内服务器PCB供应链需求放量。"},
{"stock": "东方海洋", "stock_code": "002086", "rise_rate": 9.96, "trade_date": "2025-11-19", "reason": "因中国全面禁止日本水产品入境,作为国产三文鱼+海参龙头,直接受益“替代+涨价”双重逻辑。当日烟台三文鱼出厂价跳涨9%。"},
{"stock": "合兴包装", "stock_code": "002228", "rise_rate": 9.97, "trade_date": "2025-11-13", "reason": "瓦楞纸/箱板纸现货价周内再涨,龙头纸厂同步发函提价,被市场确认为行业性涨价加速信号,公司作为纯正龙头成为低位补涨首选。"},
{"stock": "三孚股份", "stock_code": "603938", "rise_rate": 9.99, "trade_date": "2025-11-11", "reason": "全球存储芯片涨价预期陡升公司电子级特气通过信越12英寸硅外延认证并即将批量供货形成“涨价β(行业景气)+订单α(自身突破)”共振。"},
{"stock": "申通快递", "stock_code": "002468", "rise_rate": 10.03, "trade_date": "2025-09-19", "reason": "“反内卷”涨价落地带来盈利拐点。8月行业单票收入结束15连降申通涨幅领先。叠加丹鸟注入预期基本面右侧信号明确。"},
];
</script>
<template x-for="item in riseAnalysisData" :key="item.stock_code">
<div class="glass-card rounded-2xl p-6 flex flex-col justify-between">
<div>
<div class="flex justify-between items-center mb-2">
<h3 class="text-xl font-bold text-white" x-text="item.stock"></h3>
<div class="badge badge-accent badge-outline" x-text="`+${item.rise_rate}%`"></div>
</div>
<p class="text-sm text-gray-400 mb-4" x-text="`日期: ${item.trade_date}`"></p>
<p class="text-gray-300 text-sm" x-text="item.reason"></p>
</div>
<a :href="`https://valuefrontier.cn/company?scode=${item.stock_code}`" target="_blank" class="btn btn-sm btn-outline btn-info mt-4 self-start">
查看详情
<svg xmlns="http://www.w3.org/2000/svg" class="h-4 w-4" fill="none" viewBox="0 0 24 24" stroke="currentColor"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M10 6H6a2 2 0 00-2 2v10a2 2 0 002 2h10a2 2 0 002-2v-4M14 4h6m0 0v6m0-6L10 14"></path></svg>
</a>
</div>
</template>
</div>
</section>
<!-- Stock Table -->
<section class="overflow-x-auto glass-card rounded-3xl p-6">
<h2 class="subtitle text-2xl font-bold text-center mb-8">概念关联A股上市公司</h2>
<table class="table table-zebra w-full">
<thead>
<tr>
<th>股票名称</th>
<th>股票代码</th>
<th>关联原因 (涨价品种)</th>
</tr>
</thead>
<tbody x-data="stockData">
<template x-for="group in groupedStocks" :key="group.reason">
<>
<tr class="sub-header">
<th colspan="3" x-text="group.reason"></th>
</tr>
<template x-for="stock in group.stocks" :key="stock.stock_code || stock.stock">
<tr>
<td x-text="stock.stock"></td>
<td>
<a x-show="stock.stock_code" :href="`https://valuefrontier.cn/company?scode=${stock.stock_code}`" target="_blank" class="link link-hover link-primary" x-text="stock.stock_code"></a>
<span x-show="!stock.stock_code" class="text-gray-500">--</span>
</td>
<td class="text-gray-400" x-text="stock.reason"></td>
</tr>
</template>
</>
</template>
</tbody>
</table>
</section>
</main>
<footer class="text-center py-6">
<p class="text-xs text-gray-500">免责声明:本报告由人工智能“价小前投研”基于公开信息合成,仅供研究参考,不构成任何投资建议。市场有风险,投资需谨慎。</p>
<p class="text-xs text-gray-500">&copy; 2024 北京价值前沿科技有限公司. All Rights Reserved.</p>
</footer>
</div>
<script>
document.addEventListener('alpine:init', () => {
Alpine.data('stockData', () => ({
rawStocks: [
{"stock": "精艺股份", "reason": "铜", "stock_code": "002295"},
{"stock": "卧龙地产", "reason": "铜"},
{"stock": "盛达资源", "reason": "铜", "stock_code": "000603"},
{"stock": "中润资源", "reason": "铜"},
{"stock": "湖南白银", "reason": "铜", "stock_code": "002716"},
{"stock": "鹏欣资源", "reason": "铜", "stock_code": "600490"},
{"stock": "沃尔核材", "reason": "铜", "stock_code": "002130"},
{"stock": "焦作万方", "reason": "氧化铝", "stock_code": "000612"},
{"stock": "闽发铝业", "reason": "氧化铝", "stock_code": "002578"},
{"stock": "云铝股份", "reason": "氧化铝", "stock_code": "000807"},
{"stock": "中国铝业", "reason": "氧化铝", "stock_code": "601600"},
{"stock": "宝鼎科技", "reason": "覆铜板", "stock_code": "002552"},
{"stock": "德福科技", "reason": "覆铜板", "stock_code": "301511"},
{"stock": "嘉元科技", "reason": "覆铜板", "stock_code": "688388"},
{"stock": "中一科技", "reason": "覆铜板", "stock_code": "301150"},
{"stock": "晨光新材", "reason": "覆铜板", "stock_code": "605399"},
{"stock": "北方铜业", "reason": "覆铜板", "stock_code": "000737"},
{"stock": "高斯贝尔", "reason": "覆铜板"},
{"stock": "联创股份", "reason": "制冷剂"},
{"stock": "德美化工", "reason": "制冷剂", "stock_code": "002054"},
{"stock": "巨化股份", "reason": "制冷剂", "stock_code": "600160"},
{"stock": "三美股份", "reason": "制冷剂", "stock_code": "603379"},
{"stock": "金石资源", "reason": "制冷剂", "stock_code": "603505"},
{"stock": "中欣氟材", "reason": "制冷剂", "stock_code": "002915"},
{"stock": "吉林化纤", "reason": "粘胶长丝", "stock_code": "000420"},
{"stock": "新乡化纤", "reason": "粘胶长丝", "stock_code": "000949"},
{"stock": "*ST美谷", "reason": "粘胶长丝", "stock_code": "000615"},
{"stock": "晨鸣纸业", "reason": "纸张"},
{"stock": "恩捷股份", "reason": "纸张", "stock_code": "002812"},
{"stock": "宜宾纸业", "reason": "纸张", "stock_code": "600793"},
{"stock": "五洲特纸", "reason": "纸张", "stock_code": "605007"},
{"stock": "岳阳林纸", "reason": "纸张", "stock_code": "600963"},
{"stock": "华锦股份", "reason": "TMA", "stock_code": "000059"},
{"stock": "百川股份", "reason": "TMA", "stock_code": "002455"},
{"stock": "正丹股份", "reason": "TMA", "stock_code": "300641"},
{"stock": "阿科力", "reason": "TMA", "stock_code": "603722"},
{"stock": "凯盛新材", "reason": "TMA", "stock_code": "301069"},
{"stock": "怡达股份", "reason": "TMA", "stock_code": "300721"},
{"stock": "嘉澳环保", "reason": "TMA", "stock_code": "603822"},
{"stock": "毕得医药", "reason": "TMA", "stock_code": "688073"},
{"stock": "振华股份", "reason": "维生素", "stock_code": "603067"},
{"stock": "冠福股份", "reason": "维生素"},
{"stock": "新和成", "reason": "维生素"},
{"stock": "兄弟科技", "reason": "维生素", "stock_code": "002562"},
{"stock": "花园生物", "reason": "维生素", "stock_code": "300401"},
{"stock": "浙江医药", "reason": "维生素", "stock_code": "600216"},
{"stock": "安道麦A", "reason": "草甘膦", "stock_code": "000553"},
{"stock": "国光股份", "reason": "草甘膦", "stock_code": "002749"},
{"stock": "兴发集团", "reason": "草甘膦", "stock_code": "600141"},
{"stock": "扬农化工", "reason": "草甘膦", "stock_code": "600486"},
{"stock": "和邦生物", "reason": "草甘膦", "stock_code": "603077"},
{"stock": "广信股份", "reason": "草甘膦", "stock_code": "603599"},
{"stock": "华锦股份", "reason": "尿素", "stock_code": "000059"},
{"stock": "四川美丰", "reason": "尿素", "stock_code": "000731"},
{"stock": "远兴能源", "reason": "尿素"},
{"stock": "云天化", "reason": "尿素", "stock_code": "600096"},
{"stock": "华昌化工", "reason": "尿素", "stock_code": "002274"},
{"stock": "华鲁恒升", "reason": "尿素", "stock_code": "600426"},
{"stock": "醋化股份", "reason": "醋酸", "stock_code": "603968"},
{"stock": "怡达股份", "reason": "醋酸", "stock_code": "300721"},
{"stock": "百川股份", "reason": "醋酸", "stock_code": "002455"},
{"stock": "华谊集团", "reason": "醋酸", "stock_code": "600623"},
{"stock": "华鲁恒升", "reason": "醋酸", "stock_code": "600426"},
{"stock": "江苏索普", "reason": "醋酸", "stock_code": "600746"},
{"stock": "深天马A", "reason": "面板"},
{"stock": "TCL科技", "reason": "面板", "stock_code": "000100"},
{"stock": "京东方A", "reason": "面板"},
{"stock": "万润股份", "reason": "面板", "stock_code": "002643"},
{"stock": "联创光电", "reason": "面板", "stock_code": "600363"},
{"stock": "龙腾光电", "reason": "面板", "stock_code": "688055"},
{"stock": "海欣食品", "reason": "猪肉", "stock_code": "002702"},
{"stock": "华统股份", "reason": "猪肉", "stock_code": "002840"},
{"stock": "顺鑫农业", "reason": "猪肉", "stock_code": "000860"},
{"stock": "天邦食品", "reason": "猪肉", "stock_code": "002124"},
{"stock": "大北农", "reason": "猪肉", "stock_code": "002385"},
{"stock": "益生股份", "reason": "猪肉", "stock_code": "002458"},
{"stock": "牧原股份", "reason": "猪肉", "stock_code": "002714"},
{"stock": "温氏股份", "reason": "猪肉", "stock_code": "300498"},
{"stock": "凤凰航运", "reason": "航运", "stock_code": "000520"},
{"stock": "渤海轮渡", "reason": "航运", "stock_code": "603167"},
{"stock": "中远海能", "reason": "航运", "stock_code": "600026"},
{"stock": "宁波远洋", "reason": "航运", "stock_code": "601022"},
{"stock": "中远海发", "reason": "航运", "stock_code": "601866"},
{"stock": "招商轮船", "reason": "航运", "stock_code": "601872"},
{"stock": "中远海控", "reason": "航运", "stock_code": "601919"},
{"stock": "广合科技", "reason": "存储", "stock_code": "001389"},
{"stock": "德明利", "reason": "存储", "stock_code": "001309"},
{"stock": "江波龙", "reason": "存储", "stock_code": "301308"},
{"stock": "香农芯创", "reason": "存储", "stock_code": "300475"},
{"stock": "兆易创新", "reason": "存储", "stock_code": "603986"},
{"stock": "普冉股份", "reason": "存储", "stock_code": "688766"},
{"stock": "东芯股份", "reason": "存储", "stock_code": "688110"},
{"stock": "澜起科技", "reason": "存储", "stock_code": "688008"},
{"stock": "佰维存储", "reason": "存储", "stock_code": "688525"},
{"stock": "恒烁股份", "reason": "存储", "stock_code": "688416"}
],
get groupedStocks() {
const groups = this.rawStocks.reduce((acc, stock) => {
const reason = stock.reason || '其他';
if (!acc[reason]) {
acc[reason] = [];
}
acc[reason].push(stock);
return acc;
}, {});
return Object.keys(groups).map(reason => ({
reason: reason,
stocks: groups[reason]
}));
}
}));
});
// ECharts Initialization
var chartDom = document.getElementById('echarts-distribution');
var myChart = echarts.init(chartDom, 'dark'); // Using 'dark' theme
var option;
const chartData = {
'化工': 26, // (TMA, 制冷剂, 粘胶长丝, 维生素, 草甘膦, 尿素, 醋酸)
'有色金属': 11, // (铜, 氧化铝)
'电子材料': 14, // (覆铜板, 面板)
'存储芯片': 10,
'农林牧渔': 8, // (猪肉)
'交通运输': 7, // (航运)
'轻工制造': 5 // (纸张)
};
const chartCategories = Object.keys(chartData);
const chartValues = Object.values(chartData);
option = {
backgroundColor: 'transparent',
tooltip: {
trigger: 'axis',
axisPointer: {
type: 'shadow'
}
},
grid: {
left: '3%',
right: '4%',
bottom: '3%',
containLabel: true
},
xAxis: {
type: 'value',
boundaryGap: [0, 0.01],
axisLine: { lineStyle: { color: '#8392A5' } }
},
yAxis: {
type: 'category',
data: chartCategories,
axisLine: { lineStyle: { color: '#8392A5' } }
},
series: [
{
name: '关联公司数量',
type: 'bar',
data: chartValues,
itemStyle: {
borderRadius: [0, 5, 5, 0],
color: new echarts.graphic.LinearGradient(1, 0, 0, 0, [
{ offset: 0, color: '#2563eb' },
{ offset: 0.5, color: '#3b82f6' },
{ offset: 1, color: '#60a5fa' }
])
}
}
]
};
option && myChart.setOption(option);
window.addEventListener('resize', () => {
myChart.resize();
});
</script>
</body>
</html>