所有参数都应该具有相同的长度参数 `y` 的长度是 6,而前面的参数 ['year'] 的长度是 100

问题描述

我使用的图书馆

import numpy as np
import pandas as pd
import seaborn as sns
import plotly.express as px 
import matplotlib.pyplot as plt

数据集 https://i.stack.imgur.com/k4hIL.png

我的代码

sound_features = ['acousticness','danceability','energy','instrumentalness','liveness','valence']
fig = px.line(year_data,x='year',y=sound_features)
fig.show()

我的输出 https://i.stack.imgur.com/iF529.png

理想输出 https://i.stack.imgur.com/Fwsop.png

解决方法

试试这个方法

plot_data = [
    go.Scatter(
        x=year_data['year'],y=year_data['acousticness'],name = 'acousticness'
    ),go.Scatter(
        x=year_data['year'],y=year_data['danceability'],name = 'danceability'
    ),y=year_data['energy'],name = 'energy'
    ),y=year_data['instrumentalness'],name = 'instrumentalness'
    ),y=year_data['liveness'],name = 'liveness'
    ),y=year_data['valence'],name = 'valence'
    )
]

plot_layout = go.Layout(
        xaxis={"type": "category"},title='Sound features'
    )
fig = go.Figure(data=plot_data,layout=plot_layout)
pyoff.iplot(fig)