如何在两张图上显示大量线条时,上下图的线条颜色是否匹配?我正在使用。
import plotly.graph_objects as go
import plotly.express as px
from plotly.subplots import make_subplots
import pandas as pd
import numpy as np
n_rows = 100
n_cols = 5
n_rows2 = 100
n_cols2 = 5
df1 = pd.DataFrame(np.random.randint(0, 100, size=(n_rows, n_cols)), columns=['col%d' % i for i in range(n_cols)])
df2 = pd.DataFrame(np.random.randint(0, 100, size=(n_rows2, n_cols2)), columns=['col%d' % i for i in range(n_cols2)])
fig_line = make_subplots(rows=2, cols=1, shared_xaxes=True, vertical_spacing=0.007, row_width=[0.23, 0.8])
# верхнии линии
for i in df1:
fig_line.add_trace(go.Scatter(x=df1.index, y=df1[i], line=dict(width=1, dash="solid"), name = df1[i].name, connectgaps=True), row=1, col=1)
# нижнии линии
for n in df2:
fig_line.add_trace(go.Scatter(x=df2.index, y=df2[n], line=dict(width=1, dash="solid" ), name = df2[n].name, connectgaps=True), row=2, col=1)
# показ в браузер
fig_line.write_html('first_figure.html', auto_open=True)
将命名颜色列表添加到您的代码中,该列表等于数据框中的列数,然后根据列号替换颜色。例如像这样: