Отрегулируйте пределы осей графика и положения заголовков осей на троичной точечной диаграмме - PullRequest
3 голосов
/ 16 июня 2020

Я пытаюсь построить данные из трех столбцов в фрейме данных на диаграмме scatter_ternary с контурными точками данных.

Столбцы в фрейме данных: Power (W), Speed (mm/s) и Hatch (mm), и я Я использую другой столбец в фрейме данных (Energy Density (J/mm^3)) для изменения размера каждой точки данных и другой столбец Relative Density (%) для применения контура.

Данные минимально-максимальные нормализованы от 0 до 1, поскольку масштаб значений столбца различаются на несколько порядков. Я написал приведенный ниже код:

fig = px.scatter_ternary(df_all, 'Power (W)', 'Speed (mm/s)', 'Hatch (mm)',
                         hover_name="Build", symbol="Build", size = "Energy Density (J/mm^3)", 
                         color="Relative density (%)",
                         title='Process Window', size_max=15, width=875, height=700,
                         symbol_sequence = [0,3,5,14,2,26])

# move colorbar
fig.update_layout(coloraxis_colorbar=dict(yanchor="top", y=1.05, x=1, 
                  ticks="outside", ticksuffix="%"))

# move legend
fig.update_layout(legend=dict(yanchor="top", y=1.025, x=0.775))

fig.update_layout({
        'ternary':
            {
            'sum':1,
            'aaxis':{'title': 'Min-Max Normalized Laser Power<br>', 'min': 0, 
                     'linewidth':2, 'ticks':'outside',
                     'tickmode':'array','tickvals':[0,0.1,0.2,0.3,0.4,0.5,0.6,0.7,0.8,0.9]},
            'baxis':{'title': '<br>Min-Max Normalized Laser Scan Velocity', 'min': 0, 
                     'linewidth':2, 'ticks':'outside',
                     'tickmode':'array','tickvals':[0,0.1,0.2,0.3,0.4,0.5,0.6,0.7,0.8,0.9]},
            'caxis':{'title': '<br>Min-Max Normalized Hatch Spacing', 'min': 0, 
                     'linewidth':2, 'ticks':'outside',
                     'tickmode':'array','tickvals':[0,0.1,0.2,0.3,0.4,0.5,0.6,0.7,0.8,0.9]}}})

fig.show()

, который дает эту цифру:

Как мне изменить или масштабировать пределы осей, чтобы точки данных в правый нижний угол виднее? Кроме того, как мне переместить заголовок каждой оси в центр каждой оси вместо pole?

...