Как отобразить название штата США при использовании карт Plotly's Chloropleth? - PullRequest
0 голосов
/ 18 сентября 2018

Я создал карту тепла для всех штатов США, используя карты хлороплетов Плотли. После тщательного поиска в документации, я не смог найти аргумента, чтобы заставить его отображать название Штатов. Кто-нибудь знает, как это сделать, или обходной путь, как это сделать?

scl = [[0.0, 'rgb(242,240,247)'],[0.2, 'rgb(218,218,235)'],[0.4, 'rgb(188,189,220)'],\
            [0.6, 'rgb(158,154,200)'],[0.8, 'rgb(117,107,177)'],[1.0, 'rgb(84,39,143)']]


data = [ dict(
        type='choropleth',
        colorscale = scl,
        autocolorscale = False,
        locations = df['code'],
        z = df['new_old_ratio'].astype(float),
        locationmode = 'USA-states',
        marker = dict(
            line = dict (
                color = 'rgb(255,255,255)',
                width = 2
            ) ),
        colorbar = dict(
            title = "New/Old Ratio")
        ) ]

layout = dict(
        title = 'New Title to Old Title Ratio',
        geo = dict(
            scope='usa',
            projection=dict( type='albers usa' ),
            showlakes = True,
            lakecolor = 'rgb(255, 255, 255)'),
             )

fig = dict( data=data, layout=layout )
py.iplot( fig, filename='d3-cloropleth-map' )

Это результирующая карта

РЕДАКТИРОВАТЬ: Добавлен код и Resultant сюжет. Я хочу уточнить, что я хочу видеть названия государств на карте все время.

1 Ответ

0 голосов
/ 18 сентября 2018

Это код, который вы имеете в примере с сюжетом.Как вы можете видеть, в данных есть опция с названием «текст», которая соответствует тексту, который вы возвращаете при переходе по состоянию.В вашем коде вы этого не делаете.
, поэтому вам нужно добавить df['text'] = df['states'] и затем в данные text = df['text']

EDIT Однако вопрос заключается в отображении всехимена все время.После долгих исследований сюжета, единственное, что я нашел, - это получить долготу и широту каждого штата (центра штата) и отобразить их на карте Choropleth с геоскатером с text = df['text'],mode ="text"Я не вижу другого способа сделать это.Но вам понадобятся координаты, которых у вас нет в данный момент ... извините.

вы можете посмотреть это , если вы действительно хотите, чтобы имена на карте

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...