将 xlabels 转换为破折号中的字符串

Conversion of xlabels to strings in dash

因此,我编写的代码可以正常工作,但最终输出图没有按照我需要的方式绘制,我尝试将索引转换为字符串,但它不起作用(索引项是 4 位代码)我想要xlabel 中的整个项目代码。 例如 1250 而不是它当前的范围。

输出图:1

我该如何解决这个问题。

import dash
import dash_core_components as dcc
import dash_html_components as html
import pandas as pd

#File path has to be changed as seen fit
df = pd.read_csv(r'C:\Users\Karthik\Desktop\personal\python\data.csv', encoding = "ISO-8859-1")
df.set_index("Item ", inplace=True)
df.index = df.index.map(str)
app = dash.Dash()

app.layout = html.Div(children=[
    html.H1(children='Avail mapping'),
    dcc.Graph(id='example',
        figure=
        { 'data':
         [{'x': df.index, 'y': df['Availability'], 'type': 'bar', 'name': 'avail'},
            ], 

            'layout': {
                'title': 'Basic Dash Example'
            }
           } 
        )
])

if __name__ == '__main__':
    app.run_server(debug=False)

我建议将 pandas 中的索引列作为字符串导入,例如

df = pd.read_csv('csv.csv', index_col='Item', dtype={'Item': str}, encoding='ISO-8859-1')

这样,索引将以未解释的字符串值导入。