Сюжетно.Удаляйте трассировки, используя имя атрибута трассировки

#plotly #plotly.js

Вопрос:

Я пытаюсь использовать сюжетно.Удаляет пути по атрибуту массива JSON. В этом случае я хочу удалить следы с атрибутом meta = «центр»

данные :

 [  
 1: {line: {…}, marker: {…}, meta: "center", mode: "lines markers", name: "TOP", …}
    2: {line: {…}, marker: {…}, meta: "center", mode: "lines markers", name: "TOP", …}
    3: {line: {…}, marker: {…}, meta: "center", mode: "lines markers", name: "TOP", …}
    4: {line: {…}, marker: {…}, meta: "center", mode: "lines markers", name: "TOP", …}]
 

Я попробовал ниже, но это не сработало. Пожалуйста, помогите

 function remove_trace(name) {
    let indices = []
    
    Plotly.deleteTraces(plot_main.data.meta = 'center', indices)
}
 

Ответ №1:

Это может быть самым простым решением вашего ответа.

 name = 'center'

    function remove_trace(name) {
        let indices = []
        let traces_to_delete = plot_main.data

        $.each(traces_to_delete, function (idx, trace) {
            if (traces_to_delete[idx]['meta'] == name) {

                indices.push(idx)

            }

        })

        Plotly.deleteTraces(plot_main, indices)
    }