You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何放大Python中大数据框的相关图并调大字体?

解决Pandas散点矩阵的图表大小与字体问题

我懂你碰到的这个问题——6列数据的散点矩阵默认布局确实挤得难受,子图小到细节看不清,字体也跟着缩水。下面给你一套直接能用的调整方案,结合带相关系数的散点矩阵代码来修改:

一、放大图表+优化子图布局

核心是通过画布尺寸设置和子图间距调整,让每个子图更宽敞:

  • 调用scatter_matrix时直接传入figsize参数,6列数据推荐设置(15,12),觉得不够大可以继续调大(比如(18,15))
  • 用plt.tight_layout()自动优化子图间距,避免坐标轴标签重叠;如果需要更精细的控制,也可以用plt.subplots_adjust(wspace=0.3, hspace=0.3)手动调整子图间的宽/高间距

二、调大字体

有两种灵活的调整方式,选适合你的:

方式1:全局统一设置字体

一次性修改所有图表元素的字体大小,省事高效:

import matplotlib.pyplot as plt

# 全局字体参数设置
plt.rcParams.update({
    'font.size': 12,          # 全局基础字体大小
    'axes.labelsize': 14,     # 坐标轴标签字体大小
    'xtick.labelsize': 10,    # x轴刻度字体大小
    'ytick.labelsize': 10,    # y轴刻度字体大小
})

方式2:单独调整散点矩阵的字体

如果不想影响其他图表的字体风格,可以单独给散点矩阵的元素设置字体:

  • 遍历子图时,给坐标轴标签、相关系数文本单独指定fontsize参数

完整代码示例

结合你的1000行6列数据,整合所有调整逻辑:

import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
from scipy.stats import pearsonr

# 生成你的示例数据
df = pd.DataFrame(np.random.randn(1000, 6), columns=['a', 'b', 'c', 'd','e','f'])

# 可选:全局字体设置,跳过的话用下方单独调整的逻辑
plt.rcParams.update({
    'font.size': 12,
    'axes.labelsize': 14,
    'xtick.labelsize': 10,
    'ytick.labelsize': 10
})

# 创建散点矩阵,指定画布大小
fig, axes = pd.plotting.scatter_matrix(df, figsize=(15, 12), alpha=0.2)

# 遍历子图添加相关系数,同时设置文本字体大小
for i in range(len(df.columns)):
    for j in range(len(df.columns)):
        if i != j:
            # 计算皮尔逊相关系数
            corr, _ = pearsonr(df.iloc[:, i], df.iloc[:, j])
            # 在子图中心添加相关系数文本,设置字体大小
            axes[i, j].text(0.5, 0.5, f'{corr:.2f}', 
                           transform=axes[i, j].transAxes,
                           ha='center', va='center', fontsize=12)
        # 可选:单独设置坐标轴标签字体(未开启全局设置时用)
        # axes[i, j].xaxis.label.set_fontsize(14)
        # axes[i, j].yaxis.label.set_fontsize(14)

# 优化子图布局,避免标签重叠
plt.tight_layout()
plt.show()

你可以根据自己的屏幕尺寸,灵活调整figsize的数值和字体大小参数,直到达到满意的显示效果~

内容的提问来源于stack exchange,提问作者Tom_Hanks

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.29 08:03:28