簡體   English   中英

Plotly中的Choropleth貼圖:顏色顯示不正確

[英]Choropleth map in Plotly: colours not showing correctly

嘗試使用我在csv文件中擁有的一些數據以繪圖方式制作Choropleth貼圖。 已創建以下地圖:

我的地圖

但是,這不是正確的數據顯示。 這是我的csv文件的摘錄:

China,2447
...
Trinidad And Tobago,2
Turkey,26
Ukraine,8
United Arab Emirates,97
United States of America,2008

基於此,我預計中國的顏色將與美國所裝載的顏色相似,但是看起來與價值小於200的國家相同。有人知道這是什么原因嗎?

這是我的完整代碼供參考:

import pandas as pd
import plotly as py 

df = pd.read_csv('app_country_data_minus_uk.csv')

data = [dict(type='choropleth',
                locations = df['Country'],
                locationmode = 'country names',
                z = df['Applications'],
                text = df['Country'],
                colorbar = {'title':'Apps per country'},
                colorscale = 'Jet',
                reversescale = False
                )]


layout = dict(title='Application Jan-June 2018',
geo = dict(showframe=False,projection={'type':'mercator'}))

choromap = dict(data = data,layout = layout)
red = py.offline.plot(choromap,filename='world.html')

根據您的評論,我將確保中國的確是2447,而不是244。盡管您的示例代碼有效,但我也會遵循該詳盡的文檔

import plotly.plotly as py
import pandas as pd

df = pd.read_csv('app_country_data_minus_uk.csv')

data = [ dict(
        type = 'choropleth',
        locations = df['Country'],
        locationmode = 'country names',
        z = df['Applications'],
        colorscale = 'Jet',
        reversescale = False,
        marker = dict(
            line = dict (
                color = 'rgb(180,180,180)',
                width = 0.5
            ) ),
        colorbar = dict(
            autotick = False,
            tickprefix = '',
            title = 'Apps per country'),
      ) ]

layout = dict(
    title = 'app_country_data_minus_uk',
    geo = dict(
        showframe = True,
        showcoastlines = True,
        projection = dict(
            type = 'Mercator'
        )
    )
)

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

在此處輸入圖片說明

或者如果您想離線繪制它:

import plotly.plotly as py
import pandas as pd
import plotly

df = pd.read_csv('app_country_data_minus_uk.csv')

data = [ dict(
        type = 'choropleth',
        locations = df['Country'],
        locationmode = 'country names',
        z = df['Applications'],
        colorscale = 'Jet',
        reversescale = False,
        marker = dict(
            line = dict (
                color = 'rgb(180,180,180)',
                width = 0.5
            ) ),
        colorbar = dict(
            title = 'Apps per country'),
      ) ]

layout = dict(
    title = 'app_country_data_minus_uk',
    geo = dict(
        showframe = True,
        showcoastlines = True,
        projection = dict(
            type = 'Mercator'
        )
    )
)

fig = dict( data=data, layout=layout )
plotly.offline.plot(fig,filename='world.html')

如果您使用iplot ,則可以編輯圖表並以圖形方式查看數據,以確保數據看起來正確

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM