当前位置:首页>python>期刊图片复现|Python绘制双变量对角线分割组合三角热图

期刊图片复现|Python绘制双变量对角线分割组合三角热图

  • 2026-08-18 23:11:47
期刊图片复现|Python绘制双变量对角线分割组合三角热图

代码绘制成果展示

论文:Spatially synchronized structures of global  hydroclimatic extremes
论文原图
此图的横轴代表经历干旱的地区,纵轴代表经历多雨的地区。热图矩阵中的每一个方格代表一对地区,方格沿对角线被分为两个三角形:上方的三角形表示纵轴地区发生多雨事件的面积比例,下方的三角形表示横轴地区同时发生干旱事件的面积比例。右侧的颜色条指示了受影响的面积比例,数值从0到1.0,颜色越深代表受影响的区域比例越大
仿图
多种配色

代码解释

第一部分

库的导入以及字体设置
# =========================================================================================# ====================================== 1. 库的导入 =========================================# =========================================================================================import matplotlib.pyplot as pltimport matplotlib.patches as patchesimport matplotlibimport numpy as npimport pandas as pdplt.rcParams['font.family'] = 'serif'plt.rcParams['font.serif'] = ['Times New Roman']plt.rcParams['axes.unicode_minus'] = Falsematplotlib.rcParams['pdf.fonttype'] = 42matplotlib.rcParams['ps.fonttype'] = 42

第二部分

颜色库设置以及配色方案的选择
# =========================================================================================# ====================================== 2.颜色库 =========================================# =========================================================================================COLOR_SCHEMES = {    1: ('RdPu''GnBu'),    2: ('Oranges''Blues'),    3: ('Reds''Greens'),    4: ('Purples''Greens'),    5: ('YlOrBr''PuBu'),    6: ('Reds''Blues'),    7: ('OrRd''PuBuGn'),    8: ('PuRd''YlGn'),    9: ('BuPu''YlGnBu'),    10: ('YlOrRd''BuGn'),    11: ('Greys''Reds'),    12: ('autumn''winter'),    13: ('pink''bone'),    14: ('hot''cool'),    15: ('RdPu''PuBu'),    16: ('YlOrBr''Greens'),    17: ('Wistia''YlGnBu_r'),    18: ('plasma''viridis'),    19: ('summer''copper'),    20: ('afmhot''ocean'),}SELECTED_SCHEME= 1

第三部分

绘图函数定义,初始化与坐标轴设置
它首先根据输入的区域列表确定图表尺寸和离散化颜色映射。
创建画布,在画布的特定位置精确放置了主坐标轴
设置坐标轴的范围。
# =========================================================================================# ====================================== 3.绘图函数=========================================# =========================================================================================def plot_and_save_heatmap(regions, data_pluvial, data_drought,idx_highlight_row, idx_highlight_col,scheme_index=1):    # 获取区域数量,用于确定网格大小    n = len(regions)    #定义颜色的分级数量    n_steps = 10    #获取配色    cmap_d_name, cmap_p_name = COLOR_SCHEMES.get(scheme_index, COLOR_SCHEMES[1])    #加载下三角的颜色映射    cmap_drought = matplotlib.colormaps[cmap_d_name].resampled(n_steps)    #加载上三角的颜色映射    cmap_pluvial = matplotlib.colormaps[cmap_p_name].resampled(n_steps)    # 创建一个图形    fig = plt.figure(figsize=(129))    # 定义主图在画布上的位置左,下,宽,高    main_x, main_y = 0.120.15    main_w, main_h = 0.650.75    pos_main = [main_x, main_y, main_w, main_h]    #在指定位置添加    ax_main = fig.add_axes(pos_main)    #X轴范围    ax_main.set_xlim(0, n)    #Y轴范围    ax_main.set_ylim(0, n)    #设置纵横比    ax_main.set_aspect('equal')    #反转Y轴    ax_main.invert_yaxis()

第四部分

热力图绘制循环
通过两层循环遍历矩阵的每个单元格,通过条件限制只绘制对角线及以下的区域。对于每个单元格,绘制了两个三角形:左上三角形和右下三角形分别表示不同的数值。
#绘图    for row in range(n):        for col in range(n):            #只绘制下三角部分            if row >= col:                #获取对应位置的数据                val_tl = data_pluvial[row, col]                #根据数值从颜色映射中获取对应的颜色                color_tl = cmap_pluvial(val_tl)                #上三角形                triangle_tl = patches.Polygon(                    [(col, row), (col + 1, row), (col, row + 1)],  #顶点坐标                    closed=True,  #闭合图形                    color=color_tl,  #填充颜色                    ec='white',  #边框颜色                    lw=0.5  #边框宽度                )                # 将上三角形添加到主坐标轴                ax_main.add_patch(triangle_tl)                #获取对应位置的数据值                val_br = data_drought[row, col]                #根据数值从颜色映射中获取对应的颜色                color_br = cmap_drought(val_br)                #下三角形                triangle_br = patches.Polygon(                    [(col + 1, row), (col + 1, row + 1), (col, row + 1)],  #顶点坐标                    closed=True,  #闭合图形                    color=color_br,  #填充颜色                    ec='white',  # 框颜色                    lw=0.5  #边框宽度                )                #将下三角形添加到主坐标轴                ax_main.add_patch(triangle_br)                # 判断当前格子是否为指定的标记位置                if row == idx_highlight_row and col == idx_highlight_col:                    # 创建黑色方框                    rect = patches.Rectangle(                        (col, row),  #左下角坐标                        11,  #宽度和高度                        linewidth=4,  #线宽                        edgecolor='black',  #边框颜色                        facecolor='none',  #填充颜色                        zorder=10  #图层顺序                    )                    #添加到主坐标轴                    ax_main.add_patch(rect)

第五部分

图面细节设置
包括坐标轴、刻度线、标题、标记框
    # X轴刻度位置    ax_main.set_xticks(np.arange(n) + 0.5)    #Y轴刻度位置    ax_main.set_yticks(np.arange(n) + 0.5)    #X轴刻度标签    ax_main.set_xticklabels(regions, rotation=45, ha='right', fontsize=12)    #Y轴刻度标签    ax_main.set_yticklabels(regions, fontsize=12)    #图框    ax_main.spines['top'].set_visible(False)    ax_main.spines['right'].set_visible(False)    ax_main.spines['left'].set_visible(True)    ax_main.spines['bottom'].set_visible(True)    for spine in ax_main.spines.values():        spine.set_linewidth(2)    #刻度线    ax_main.tick_params(axis='both', which='both', length=4,width=2,)    #Y轴标题    ax_main.set_ylabel("Pluvial", fontsize=16, labelpad=10)    ax_main.set_xlabel("Drought", fontsize=16, labelpad=10)    #主标题    ax_main.set_title("Pluvial-drought synchronization", fontsize=18, loc='left', pad=20)    #标记注释    #坐标    target_x = idx_highlight_col + 1    target_y = idx_highlight_row    # 添加注释    ax_main.annotate(        "Detailed in\n      " + r"$\bf{c}$",  #注释文本        xy=(target_x, target_y),  #箭头坐标        xytext=(target_x + 2.5, target_y - 2),  #文本坐标        arrowprops=dict(arrowstyle="->, head_width=0.4, head_length=0.8",  #箭头样式                        connectionstyle="arc3,rad=-0.3",  #连接线弯曲程度                        lw=2, color='black'),  #线宽和颜色        fontsize=14, ha='center'    )

第六部分

双颜色条绘制
#颜色条    cbar_gap = 0.02  # 主图与颜色条之间间隔    cbar_width = 0.03  #单个颜色条的宽度    cbar_bottom = main_y  #颜色条底部位置    cbar_height = main_h  #颜色条高度    #颜色条的起始X坐标    cbar_left_x = main_x + main_w + cbar_gap    #创建垂直渐变数据    gradient = np.linspace(01, n_steps).reshape(-11)    #绘制左侧颜色条    # 添加子坐标轴用于绘制颜色条    ax_cb_left = fig.add_axes([cbar_left_x, cbar_bottom, cbar_width, cbar_height])    #绘制图像    ax_cb_left.imshow(gradient, aspect='auto', cmap=cmap_drought, origin='lower')    #X轴刻度    ax_cb_left.set_xticks([])    #Y轴刻度    ax_cb_left.set_yticks([])    #图框    for spine in ax_cb_left.spines.values():        spine.set_edgecolor('black');        spine.set_linewidth(0.5)    #绘制右侧颜色条    #添加子坐标轴    ax_cb_right = fig.add_axes([cbar_left_x + cbar_width, cbar_bottom, cbar_width, cbar_height])    #绘制图像    ax_cb_right.imshow(gradient, aspect='auto', cmap=cmap_pluvial, origin='lower', extent=[0101])    #X轴刻度    ax_cb_right.set_xticks([])    #右侧颜色条的刻度    ax_cb_right.yaxis.tick_right()    #设置刻度数值位置    ax_cb_right.set_yticks([00.20.40.60.81.0])    #刻度标签文本    ax_cb_right.set_yticklabels(['0', '0.2', '0.4', '0.6', '0.8', '1.0'], fontsize=12)    # 为颜色条添加细黑色边框    for spine in ax_cb_right.spines.values():        spine.set_edgecolor('black');        spine.set_linewidth(0.5)    #图框    ax_cb_right.set_ylabel("Area fraction (-)", rotation=270, labelpad=-60, fontsize=15)

第七部分

执行部分
包括读取两个的数据。提取区域名称和数值,查找指定标记区域的索引,调用函数进行绘图
# =========================================================================================# ====================================== 4.执行部分=========================================# =========================================================================================if __name__ == "__main__":    excel_path = r"data.xlsx"    #读取数据    df_pluvial = pd.read_excel(excel_path, sheet_name='Pluvial_Data', index_col=0)    df_drought = pd.read_excel(excel_path, sheet_name='Drought_Data', index_col=0)    #获取索引列表作为区域名称    regions = df_pluvial.index.tolist()    #读取数值    data_pluvial = df_pluvial.values    data_drought = df_drought.values    #标记行索引    idx_mexico = regions.index("Mexico")    idx_west_usa = regions.index("West USA")    # 调用封装好的绘图函数进行绘制和保存    plot_and_save_heatmap(            regions,  # 区域名称列表            data_pluvial,  #上三角数据            data_drought,  #下三角数据            idx_highlight_row=idx_mexico,  #标记行索引            idx_highlight_col=idx_west_usa,  #标记行索引            scheme_index=SELECTED_SCHEME,  #配色方案    )

如何应用?

1.选择你想要使用到的配色方案:

SELECTED_SCHEME1

2.设置绘图结果的保存地址:

plt.savefig(fr"heatmap_visualization_{SELECTED_SCHEME}.png", dpi=300, bbox_inches='tight')plt.savefig(fr"heatmap_visualization_{SELECTED_SCHEME}.pdf", bbox_inches='tight')

3.设置原始数据的路径:

excel_path = r"simulation_data.xlsx"

4.设置要添加标记框的位置:

idx_mexico = regions.index("Mexico")idx_west_usa = regions.index("West USA")

推荐

期刊图片复现|Python绘制二维偏依赖PDP图
期刊复现|python绘制基于SHAP分析和GAM模型拟合的单特征依赖图
期刊图片复现|python绘制带有渐变颜色shap特征重要性组合图(条形图+蜂巢图)
期刊复现|用Python绘制SHAP特征重要性总览图、依赖图、双特征交互效应SHAP图,解锁XGBoost模型的终极奥秘
期刊图片复现|Python绘制shap重要性蜂巢图+单特征依赖图+交互效应强度气泡图+交互效应依赖图(回归+二分类+分类)

获取方式

需要的请后台私信我获取详细信息,注意只会分享练习数据和代码文件,不会提供答疑服务,代码文件中已经包含了每行代码的完整注释!!

最新文章

随机文章

基本 文件 流程 错误 SQL 调试
  1. 请求信息 : 2026-08-21 18:54:39 HTTP/2.0 GET : https://f.mffb.com.cn/a/509233.html
  2. 运行时间 : 0.365692s [ 吞吐率:2.73req/s ] 内存消耗:4,623.48kb 文件加载:140
  3. 缓存信息 : 0 reads,0 writes
  4. 会话信息 : SESSION_ID=cf0882571fb360a946901a2ba8f1a47f
  1. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/public/index.php ( 0.79 KB )
  2. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/autoload.php ( 0.17 KB )
  3. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/composer/autoload_real.php ( 2.49 KB )
  4. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/composer/platform_check.php ( 0.90 KB )
  5. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/composer/ClassLoader.php ( 14.03 KB )
  6. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/composer/autoload_static.php ( 4.90 KB )
  7. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-helper/src/helper.php ( 8.34 KB )
  8. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-validate/src/helper.php ( 2.19 KB )
  9. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/helper.php ( 1.47 KB )
  10. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/stubs/load_stubs.php ( 0.16 KB )
  11. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Exception.php ( 1.69 KB )
  12. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-container/src/Facade.php ( 2.71 KB )
  13. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/symfony/deprecation-contracts/function.php ( 0.99 KB )
  14. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/symfony/polyfill-mbstring/bootstrap.php ( 8.26 KB )
  15. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/symfony/polyfill-mbstring/bootstrap80.php ( 9.78 KB )
  16. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/symfony/var-dumper/Resources/functions/dump.php ( 1.49 KB )
  17. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-dumper/src/helper.php ( 0.18 KB )
  18. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/symfony/var-dumper/VarDumper.php ( 4.30 KB )
  19. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/App.php ( 15.30 KB )
  20. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-container/src/Container.php ( 15.76 KB )
  21. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/psr/container/src/ContainerInterface.php ( 1.02 KB )
  22. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/provider.php ( 0.19 KB )
  23. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Http.php ( 6.04 KB )
  24. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-helper/src/helper/Str.php ( 7.29 KB )
  25. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Env.php ( 4.68 KB )
  26. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/common.php ( 0.03 KB )
  27. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/helper.php ( 18.78 KB )
  28. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Config.php ( 5.54 KB )
  29. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/app.php ( 0.95 KB )
  30. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/cache.php ( 0.78 KB )
  31. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/console.php ( 0.23 KB )
  32. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/cookie.php ( 0.56 KB )
  33. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/database.php ( 2.48 KB )
  34. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/facade/Env.php ( 1.67 KB )
  35. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/filesystem.php ( 0.61 KB )
  36. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/lang.php ( 0.91 KB )
  37. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/log.php ( 1.35 KB )
  38. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/middleware.php ( 0.19 KB )
  39. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/route.php ( 1.89 KB )
  40. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/session.php ( 0.57 KB )
  41. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/trace.php ( 0.34 KB )
  42. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/view.php ( 0.82 KB )
  43. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/event.php ( 0.25 KB )
  44. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Event.php ( 7.67 KB )
  45. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/service.php ( 0.13 KB )
  46. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/AppService.php ( 0.26 KB )
  47. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Service.php ( 1.64 KB )
  48. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Lang.php ( 7.35 KB )
  49. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/lang/zh-cn.php ( 13.70 KB )
  50. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/initializer/Error.php ( 3.31 KB )
  51. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/initializer/RegisterService.php ( 1.33 KB )
  52. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/services.php ( 0.14 KB )
  53. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/service/PaginatorService.php ( 1.52 KB )
  54. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/service/ValidateService.php ( 0.99 KB )
  55. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/service/ModelService.php ( 2.04 KB )
  56. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-trace/src/Service.php ( 0.77 KB )
  57. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Middleware.php ( 6.72 KB )
  58. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/initializer/BootService.php ( 0.77 KB )
  59. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/Paginator.php ( 11.86 KB )
  60. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-validate/src/Validate.php ( 63.20 KB )
  61. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/Model.php ( 23.55 KB )
  62. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/concern/Attribute.php ( 21.05 KB )
  63. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/concern/AutoWriteData.php ( 4.21 KB )
  64. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/concern/Conversion.php ( 6.44 KB )
  65. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/concern/DbConnect.php ( 5.16 KB )
  66. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/concern/ModelEvent.php ( 2.33 KB )
  67. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/concern/RelationShip.php ( 28.29 KB )
  68. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-helper/src/contract/Arrayable.php ( 0.09 KB )
  69. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-helper/src/contract/Jsonable.php ( 0.13 KB )
  70. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/contract/Modelable.php ( 0.09 KB )
  71. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Db.php ( 2.88 KB )
  72. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/DbManager.php ( 8.52 KB )
  73. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Log.php ( 6.28 KB )
  74. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Manager.php ( 3.92 KB )
  75. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/psr/log/src/LoggerTrait.php ( 2.69 KB )
  76. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/psr/log/src/LoggerInterface.php ( 2.71 KB )
  77. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Cache.php ( 4.92 KB )
  78. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/psr/simple-cache/src/CacheInterface.php ( 4.71 KB )
  79. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-helper/src/helper/Arr.php ( 16.63 KB )
  80. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/cache/driver/File.php ( 7.84 KB )
  81. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/cache/Driver.php ( 9.03 KB )
  82. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/contract/CacheHandlerInterface.php ( 1.99 KB )
  83. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/Request.php ( 0.09 KB )
  84. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Request.php ( 55.78 KB )
  85. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/middleware.php ( 0.25 KB )
  86. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Pipeline.php ( 2.61 KB )
  87. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-trace/src/TraceDebug.php ( 3.40 KB )
  88. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/middleware/SessionInit.php ( 1.94 KB )
  89. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Session.php ( 1.80 KB )
  90. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/session/driver/File.php ( 6.27 KB )
  91. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/contract/SessionHandlerInterface.php ( 0.87 KB )
  92. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/session/Store.php ( 7.12 KB )
  93. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Route.php ( 23.73 KB )
  94. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/RuleName.php ( 5.75 KB )
  95. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/Domain.php ( 2.53 KB )
  96. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/RuleGroup.php ( 22.43 KB )
  97. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/Rule.php ( 26.95 KB )
  98. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/RuleItem.php ( 9.78 KB )
  99. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/route/app.php ( 1.72 KB )
  100. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/facade/Route.php ( 4.70 KB )
  101. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/dispatch/Controller.php ( 4.74 KB )
  102. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/Dispatch.php ( 10.44 KB )
  103. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/controller/Index.php ( 4.81 KB )
  104. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/BaseController.php ( 2.05 KB )
  105. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/facade/Db.php ( 0.93 KB )
  106. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/connector/Mysql.php ( 5.44 KB )
  107. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/PDOConnection.php ( 52.47 KB )
  108. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/Connection.php ( 8.39 KB )
  109. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/ConnectionInterface.php ( 4.57 KB )
  110. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/builder/Mysql.php ( 16.58 KB )
  111. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/Builder.php ( 24.06 KB )
  112. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/BaseBuilder.php ( 27.50 KB )
  113. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/Query.php ( 15.71 KB )
  114. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/BaseQuery.php ( 45.13 KB )
  115. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/TimeFieldQuery.php ( 7.43 KB )
  116. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/AggregateQuery.php ( 3.26 KB )
  117. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/ModelRelationQuery.php ( 20.07 KB )
  118. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/ParamsBind.php ( 3.66 KB )
  119. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/ResultOperation.php ( 7.01 KB )
  120. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/WhereQuery.php ( 19.37 KB )
  121. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/JoinAndViewQuery.php ( 7.11 KB )
  122. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/TableFieldInfo.php ( 2.63 KB )
  123. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/Transaction.php ( 2.77 KB )
  124. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/log/driver/File.php ( 5.96 KB )
  125. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/contract/LogHandlerInterface.php ( 0.86 KB )
  126. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/log/Channel.php ( 3.89 KB )
  127. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/event/LogRecord.php ( 1.02 KB )
  128. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-helper/src/Collection.php ( 16.47 KB )
  129. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/facade/View.php ( 1.70 KB )
  130. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/View.php ( 4.39 KB )
  131. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Response.php ( 8.81 KB )
  132. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/response/View.php ( 3.29 KB )
  133. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Cookie.php ( 6.06 KB )
  134. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-view/src/Think.php ( 8.38 KB )
  135. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/contract/TemplateHandlerInterface.php ( 1.60 KB )
  136. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-template/src/Template.php ( 46.61 KB )
  137. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-template/src/template/driver/File.php ( 2.41 KB )
  138. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-template/src/template/contract/DriverInterface.php ( 0.86 KB )
  139. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/runtime/temp/067d451b9a0c665040f3f1bdd3293d68.php ( 11.98 KB )
  140. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-trace/src/Html.php ( 4.42 KB )
  1. CONNECT:[ UseTime:0.001074s ] mysql:host=127.0.0.1;port=3306;dbname=f_mffb;charset=utf8mb4
  2. SHOW FULL COLUMNS FROM `fenlei` [ RunTime:0.001297s ]
  3. SELECT * FROM `fenlei` WHERE `fid` = 0 [ RunTime:0.009045s ]
  4. SELECT * FROM `fenlei` WHERE `fid` = 63 [ RunTime:0.001088s ]
  5. SHOW FULL COLUMNS FROM `set` [ RunTime:0.001215s ]
  6. SELECT * FROM `set` [ RunTime:0.016265s ]
  7. SHOW FULL COLUMNS FROM `article` [ RunTime:0.001201s ]
  8. SELECT * FROM `article` WHERE `id` = 509233 LIMIT 1 [ RunTime:0.008535s ]
  9. UPDATE `article` SET `lasttime` = 1787309679 WHERE `id` = 509233 [ RunTime:0.040984s ]
  10. SELECT * FROM `fenlei` WHERE `id` = 66 LIMIT 1 [ RunTime:0.000734s ]
  11. SELECT * FROM `article` WHERE `id` < 509233 ORDER BY `id` DESC LIMIT 1 [ RunTime:0.001166s ]
  12. SELECT * FROM `article` WHERE `id` > 509233 ORDER BY `id` ASC LIMIT 1 [ RunTime:0.014169s ]
  13. SELECT * FROM `article` WHERE `id` < 509233 ORDER BY `id` DESC LIMIT 10 [ RunTime:0.004555s ]
  14. SELECT * FROM `article` WHERE `id` < 509233 ORDER BY `id` DESC LIMIT 10,10 [ RunTime:0.008170s ]
  15. SELECT * FROM `article` WHERE `id` < 509233 ORDER BY `id` DESC LIMIT 20,10 [ RunTime:0.076795s ]
0.368912s