如何在Plotly中绘制两个Density Heatmaps水平排列子图
你可以直接提取Plotly Express生成的密度热力图的trace元素,添加到子图容器中,不需要额外查找plotly.graph_objects的对应接口,实现代码如下:
import pandas as pd import plotly.express as px from plotly.subplots import make_subplots # 1. 读取你的两个DataFrame数据,替换为你实际的数据源路径 df_first = pd.read_csv('Flights dataset.csv') df_second = pd.read_csv('Your second dataset.csv') # 2. 分别用px生成两个独立的密度热力图 fig_first = px.density_heatmap(df_first, x='DEST_CITY_NAME', marginal_x="histogram") fig_second = px.density_heatmap(df_second, x='DEST_CITY_NAME', marginal_x="histogram") # 3. 创建1行2列的水平子图布局 fig = make_subplots( rows=1, cols=2, subplot_titles=("第一个数据集热力图", "第二个数据集热力图") ) # 4. 将两个热力图的trace添加到对应子图位置 for trace in fig_first.data: fig.add_trace(trace, row=1, col=1) for trace in fig_second.data: fig.add_trace(trace, row=1, col=2) # 5. 调整整体布局后展示 fig.update_layout( height=550, width=1200, title_text="双数据集密度热力图对比" ) fig.show()
如果需要单独调整子图的坐标轴范围、颜色条样式、配色等属性,可以调用update_xaxes()、update_yaxes()或者直接修改对应trace的参数实现。
内容的提问来源于stack exchange,提问作者Shahriar.M
相关产品推荐
相关产品推荐

