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

如何实现仅显示下三角、反映相关数据框差异的热力图?

Solution to Show Only Lower Triangle in Your Correlation Difference Heatmap

Got it, let's adjust your existing code to display only the lower triangle of the heatmap while preserving all your original styling and functionality. Here's a straightforward approach:

Step 1: Filter Your Melted Data to Keep Only the Lower Triangle

First, we'll add row and column index columns to your melt_p4 dataframe, then filter to retain only the rows that fall in the lower triangle (you can choose to include or exclude the diagonal):

# Add numeric indices for rows and columns (uses the factor order of Var1/Var2)
melt_p4$row_num <- as.numeric(melt_p4$Var1)
melt_p4$col_num <- as.numeric(melt_p4$Var2)

# Keep lower triangle INCLUDING the diagonal
melt_p4_lower <- melt_p4[melt_p4$row_num >= melt_p4$col_num, ]

# OR: Keep lower triangle EXCLUDING the diagonal
# melt_p4_lower <- melt_p4[melt_p4$row_num > melt_p4$col_num, ]

Step 2: Update Your Heatmap Code to Use the Filtered Data

Replace melt_p4 with melt_p4_lower in your existing ggplot code. This will only render the tiles and text for the lower triangle region:

heat_map <- ggplot(melt_p4_lower, aes(Var1, Var2)) +
  geom_tile(aes(fill = value), color = "white") +
  labs(title = "ST - LT Correlation Across Factor") +
  scale_fill_gradient(low = "red", high = "green") +
  theme(axis.text.x = element_text(angle = 90, hjust = 1)) +
  geom_text(aes(label = round(value, 1)), size = 2.2)

Quick Explanation

  • The as.numeric(melt_p4$Var1) converts your factor-based row/column labels to numeric indices, which lets us easily compare positions to identify the lower triangle.
  • By filtering to row_num >= col_num, we keep all cells where the row position is at or below the column position (the lower triangle). Adjust to row_num > col_num if you want to hide the diagonal values.
  • All your original formatting (color gradient, axis rotation, text labels) stays intact—we're just limiting which cells get drawn.

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.26 10:26:50