plotly.graph_objects中的蜘蛛图形线

时间:2019-10-22 19:25:24

标签: django go plotly python-3.6

但是,当我生成图表时,该线并没有结束,我尝试了很多方法,但是没有任何帮助。

r中的内容是我已经声明的具有已定义值的变量

fig = go.Figure()


fig.add_trace(go.Scatterpolar(
    name = "Ideal",
    r=[ ideal_Funciones_Responsabilidades, ideal_etapas_propias, ideal_Aspectos_Legales, ideal_Gestion_Ambiental, ideal_Gestion_de_Seguridad, 
    ideal_manejo_Informacion, hallado_Tecnicos, ideal_Humanos , ideal_transversales],
    theta=categories,

    #connectgaps=True,
    #line_color = 'darkviolet'   

    type= 'scatterpolar',
    mode = 'lines',


))

fig.add_trace(go.Scatterpolar(
    name = "Hallado",
    r=[ hallado_Funciones_Responsabilidades, hallado_etapas_propias, hallado_Aspectos_Legales, hallado_Gestion_Ambiental, hallado_Gestion_de_Seguridad, 
    hallado_manejo_Informacion, hallado_Tecnicos, hallado_Humanos, hallado_transversales],
    theta=categories,
    #mode = "markers",


    type= 'scatterpolar',
    mode = 'lines',
    #line_color = 'peru'




))




fig.update_layout(

    polar=dict(


        radialaxis=dict(

            #visible=True,
            range=[0, maximo_valor + 1]
        )

        ),
    #line_close=True,
    # showlegend=False
)

Image:

enter image description here

我会很乐意为您提供有关此主题的帮助。

2 个答案:

答案 0 :(得分:0)

使用go.Scatterpolar()而非px.line_polar()并设置line_close=True

情节1: line_close=True

enter image description here

图2: line_close=False

enter image description here

完整代码:

import plotly.express as px
import pandas as pd
df = pd.DataFrame(dict(
    r=[1, 5, 2, 2, 3],
    theta=['processing cost','mechanical properties','chemical stability', 
           'thermal stability', 'device integration']))
fig = px.line_polar(df, r='r', theta='theta', line_close=False)
fig.show()

go.Scatterpolar()似乎没有类似的选择。

答案 1 :(得分:0)

您可以使用go.Scatterpolar()关闭行,方法是在列表末尾重复r和theta列表中的第一个元素。

说您声明:

r_list=[ ideal_Funciones_Responsabilidades, ideal_etapas_propias, ideal_Aspectos_Legales, ideal_Gestion_Ambiental, ideal_Gestion_de_Seguridad, 
ideal_manejo_Informacion, hallado_Tecnicos, ideal_Humanos , ideal_transversales]
r_list.append(r_list[0])

然后使用

r=r_list