当前位置: 首页 > news >正文

广告流量投放推推蛙贴吧优化

广告流量投放,推推蛙贴吧优化,美食网页设计免费模板,巴中学校网站建设代码: Github:Python实现股票数据可视化代码https://github.com/magolan2000/Data-visualization/tree/master 软件环境:PyCharm 2022.3.1 数据来源:akshare 最近DeepSeek可谓是热度不断,因此想评判一下DeepSeek的编程…

代码:
Github:Python实现股票数据可视化代码https://github.com/magolan2000/Data-visualization/tree/master

软件环境:PyCharm 2022.3.1

数据来源:akshare

        最近DeepSeek可谓是热度不断,因此想评判一下DeepSeek的编程能力到底如何。虽然最近DeepSeek的服务器并不是很稳定,大概每问2至3次就会显示服务器繁忙,不过显示内容的数量和质量还是非常不错的。

        与GPT4进行比较的话,同样的问题GPT4可能会出现偷懒的情况,例如生成的代码大概率只生成一个代码的大致框架,如果不详细提问就不会生成完整的代码。即使最近几天ChatGPT也同样加入了类似于DeepSeek的深度思考(R1)与联网搜索功能,但是其效果还是欠佳,而且ChatGPT的推理过程即使你用中文提问但推理过程还是显示用英文在思考。

        ChatGPT暂时的优势就是有大量的插件和优秀简约的界面,例如生成长代码时会自动进入画布模式,可以在画布模式中修改运行代码,是一个小型简约的编辑器,方便将完全优化好后的代码导入至其他编辑器运行,避免利用AI修改优化代码时需要反复在浏览器和编辑器之间跳转。

        DeepSeek就不过多介绍了,它的蓝紫色小鲸鱼图标与Docker图标还蛮像的,下面展示一下生成的股票数据可视化后的代码与结果。


一、股票数据可视化

1.1代码

Python实现股票数据可视化代码——数据.pyhttps://download.csdn.net/download/m0_53095310/90339747        下面给出股票数据可视化的部分代码:

# -*- coding: utf-8 -*-
import os
import pandas as pd
import akshare as ak
from datetime import datetime
import logging
from concurrent.futures import ThreadPoolExecutor, as_completed
import matplotlib.pyplot as plt
import matplotlib.font_manager as fm# ==================== 用户配置部分 ====================
# A股股票代码列表(示例:贵州茅台、宁德时代)
a_stock_symbols = ["600519", "300750","601899"]  # 支持数字或带后缀的代码(如600519.SH)# 时间范围
start_date = "2020-01-01"
end_date = datetime.now().strftime("%Y-%m-%d")# 数据保存路径
save_dir = "./stock_data"  # 数据存储主目录
a_stock_dir = os.path.join(save_dir, "A股数据")  # A股数据子目录
plot_dir = os.path.join(save_dir, "可视化图表")  # 可视化图表目录# 创建目录(如果不存在)
os.makedirs(a_stock_dir, exist_ok=True)
os.makedirs(plot_dir, exist_ok=True)# 配置日志
logging.basicConfig(level=logging.INFO,format="%(asctime)s - %(levelname)s - %(message)s",handlers=[logging.FileHandler(os.path.join(save_dir, "stock_data.log")),  # 日志文件logging.StreamHandler()  # 控制台输出]
)# 设置中文字体
try:# Windows 系统使用黑体plt.rcParams["font.sans-serif"] = ["SimHei"]# macOS 或 Linux 系统使用 Arial Unicode MS 或文泉驿字体# plt.rcParams["font.sans-serif"] = ["Arial Unicode MS"]  # macOS# plt.rcParams["font.sans-serif"] = ["WenQuanYi Zen Hei"]  # Linuxplt.rcParams["axes.unicode_minus"] = False  # 解决负号显示问题
except Exception as e:logging.error(f"字体设置失败: {e}")# ======================================================def fetch_a_stock_data(symbol, retries=3):"""通过AKShare获取单只A股数据(后复权)"""for attempt in range(retries):try:# 去掉股票代码的后缀(如 .SH 或 .SZ)symbol_clean = symbol.split(".")[0]# 获取数据df = ak.stock_zh_a_hist(symbol=symbol_clean, period="daily", adjust="hfq")if df.empty:logging.warning(f"[A股] 数据为空({symbol_clean})")return None# 重命名列df.rename(columns={"日期": "Date","开盘": "Open","收盘": "Close","最高": "High","最低": "Low","成交量": "Volume"}, inplace=True)# 转换日期格式并设置为索引df["Date"] = pd.to_datetime(df["Date"])df.set_index("Date", inplace=True)logging.info(f"[A股] 数据获取成功({symbol_clean})")return dfexcept Exception as e:if attempt < retries - 1:logging.warning(f"[A股] 数据获取失败({symbol_clean}),第 {attempt + 1} 次重试...")else:logging.error(f"[A股] 数据获取失败({symbol_clean}): {e}")return Nonedef clean_data(df):"""数据清洗:处理缺失值和异常值"""if df is None or df.empty:return None# 1. 删除完全缺失的行df_clean = df.dropna(how="all")# 2. 处理零成交量(视为停牌/无效数据)df_clean = df_clean[df_clean["Volume"] > 0]# 3. 处理价格异常值(如价格<=0或单日涨跌幅超过50%)price_columns = ["Open", "High", "Low", "Close"]for col in price_columns:df_clean = df_clean[df_clean[col] > 0]  # 删除价格为负或零的异常记录# 检查清洗后的数据是否为空if df_clean.empty:logging.warning("数据清洗后为空,可能全部为异常值")return Nonereturn df_cleandef save_to_csv(df, symbol):"""保存清洗后的数据到CSV文件"""if df is None or df.empty:logging.warning(f"无有效数据可保存({symbol})")return# 保存路径save_path = os.path.join(a_stock_dir, f"{symbol}.csv")df.to_csv(save_path, encoding="utf-8-sig")  # 兼容中文路径logging.info(f"数据已保存至:{save_path}")

1.2数据可视化

1.3分析

        该代码的主要功能是通过akshare库获取A股股票的历史数据,进行数据清洗、保存和可视化。

函数解释
函数解释
fetch_a_stock_data获取单只股票的历史数据
clean_data清洗数据,处理缺失值和异常值
save_to_csv将清洗后的数据保存为CSV文件
plot_stock_data绘制股票价格走势图并保存为PNG文件
process_single_stock处理单只股票的完整流程(获取、清洗、保存、可视化)
batch_process_a_stocks批量处理所有股票代码(使用多线程)

二、功能丰富的静态行情图

2.1代码

        除了收盘价以外,行情图添加了5日均线、10日均线和20日均线,包括不同时间段的成交量数据,下面给出股票行情数据可视化的部分代码:

# ======================================================
def fetch_a_stock_data(symbol, retries=3):"""通过AKShare获取单只A股数据(后复权)"""for attempt in range(retries):try:# 去掉股票代码的后缀(如 .SH 或 .SZ)symbol_clean = symbol.split(".")[0]# 获取数据df = ak.stock_zh_a_hist(symbol=symbol_clean, period="daily", adjust="hfq")if df.empty:logging.warning(f"[A股] 数据为空({symbol_clean})")return None# 重命名列df.rename(columns={"日期": "Date","开盘": "Open","收盘": "Close","最高": "High","最低": "Low","成交量": "Volume"}, inplace=True)# 转换日期格式并设置为索引df["Date"] = pd.to_datetime(df["Date"])df.set_index("Date", inplace=True)logging.info(f"[A股] 数据获取成功({symbol_clean})")return dfexcept Exception as e:if attempt < retries - 1:logging.warning(f"[A股] 数据获取失败({symbol_clean}),第 {attempt + 1} 次重试...")else:logging.error(f"[A股] 数据获取失败({symbol_clean}): {e}")return Nonedef clean_data(df):"""数据清洗:处理缺失值和异常值"""if df is None or df.empty:return None# 1. 删除完全缺失的行df_clean = df.dropna(how="all")# 2. 处理零成交量(视为停牌/无效数据)df_clean = df_clean[df_clean["Volume"] > 0]# 3. 处理价格异常值(如价格<=0或单日涨跌幅超过50%)price_columns = ["Open", "High", "Low", "Close"]for col in price_columns:df_clean = df_clean[df_clean[col] > 0]  # 删除价格为负或零的异常记录# 检查清洗后的数据是否为空if df_clean.empty:logging.warning("数据清洗后为空,可能全部为异常值")return Nonereturn df_cleandef save_to_csv(df, symbol):"""保存清洗后的数据到CSV文件"""if df is None or df.empty:logging.warning(f"无有效数据可保存({symbol})")return# 保存路径save_path = os.path.join(a_stock_dir, f"{symbol}.csv")df.to_csv(save_path, encoding="utf-8-sig")  # 兼容中文路径logging.info(f"数据已保存至:{save_path}")def plot_stock_data(df, symbol):"""专业级股票行情走势图"""if df is None or df.empty:logging.warning(f"无有效数据可绘制({symbol})")return

2.2数据可视化

2.3分析

        调用batch_process_a_stocks()函数,批量处理用户配置的A股股票数据。处理完成后,记录日志信息。

三、具有可交互界面的行情图

3.1代码

# ==================== 布局设计 ====================
app.layout = html.Div([html.Div([html.H1("专业级股票分析系统", style={'color': 'white'}),html.Div([dcc.Input(id='stock-input',type='text',value='600519',placeholder='输入股票代码',style={'width': '150px', 'margin-right': '10px'}),dcc.DatePickerRange(id='date-picker',min_date_allowed=datetime(2010, 1, 1),max_date_allowed=datetime.today(),start_date=datetime.today() - timedelta(days=365),end_date=datetime.today(),display_format='YYYY-MM-DD'),dcc.Dropdown(id='indicator-selector',options=[{'label': 'MACD', 'value': 'MACD'},{'label': 'RSI', 'value': 'RSI'},{'label': '布林线', 'value': 'BOLL'},],value=['MACD'],multi=True,style={'width': '300px', 'margin-left': '10px'})], style={'padding': '20px', 'backgroundColor': '#1a1a1a'})]),dcc.Loading(id="loading",type="circle",children=[dcc.Graph(id='main-chart', style={'height': '600px'}),dcc.Interval(id='interval-component', interval=60 * 1000, n_intervals=0)])
], style={'backgroundColor': '#1a1a1a', 'height': '100vh'})

3.2数据可视化

        可交互界面设计的不错,颜色搭配效果很好,不仅添加了时间区间设置功能,还可以任意选择股票代码查看股票行情的历史数据,鼠标移动至折线图上会有详细的数据展示。

http://www.hkea.cn/news/545084/

相关文章:

  • 网站私信界面国外网站seo免费
  • wordpress mysql类惠州网站seo
  • 为什么做网站必须要用域名举出最新的网络营销的案例
  • 电子请柬网站开发百度竞价推广登录入口
  • 网站设计与推广国际时事新闻2022最新
  • 柬埔寨网站开发营销技巧和营销方法
  • 网站建立价格长沙网站外包公司
  • 王建设医生个人网站免费google账号注册入口
  • 免费自建手机网站搜索引擎优化的方法包括
  • 甘肃省建设工程安全质量监督管理局网站官网拉新项目官方一手平台
  • 做电影网站赚钱武汉新闻最新消息
  • 做网站没有成本的方法上海百度分公司电话
  • 寺庙网站建设百度ai人工智能
  • 完成公司网站建设下载关键词推广软件
  • wordpress如何关闭网站下载app
  • WordPress小程序二次修改石家庄seo排名外包
  • 做百度关键词网站厦门seo外包
  • 泉州seo-泉州网站建设公司谷歌关键词搜索工具
  • 组织部网站建设方案行业关键词分类
  • 上海黄浦 网站制作中国搜索引擎排名2021
  • 手机网站建设 cms营销技巧和营销方法
  • 平顶山做网站优化微博搜索引擎优化
  • 网站如何做品牌宣传海报每日舆情信息报送
  • 做论坛网站需要多大空间seo推广招聘
  • 中国建设银行网站软件不限次数观看视频的app
  • 网站开发建设的步骤win11优化大师
  • 在线做数据图的网站樱桃bt磁力天堂
  • 网站建设费的税率东莞公司网上推广
  • 上海设计公司排名前十宁波seo搜索优化费用
  • 如皋做网站公司com域名