有什么方法可以绘制印度地图吗?

2024-04-06

我正在尝试使用plotly 绘制印度地图,但无法找到方法来做到这一点。下面是我在美国尝试过的代码。

import pandas as pd

df_sample = pd.read_csv('https://raw.githubusercontent.com/plotly/datasets/master/laucnty16.csv')
df_sample['State FIPS Code'] = df_sample['State FIPS Code'].apply(lambda x: str(x).zfill(2))
df_sample['County FIPS Code'] = df_sample['County FIPS Code'].apply(lambda x: str(x).zfill(3))
df_sample['FIPS'] = df_sample['State FIPS Code'] + df_sample['County FIPS Code']

colorscale = ["#f7fbff","#ebf3fb","#deebf7","#d2e3f3","#c6dbef","#b3d2e9","#9ecae1",
              "#85bcdb","#6baed6","#57a0ce","#4292c6","#3082be","#2171b5","#1361a9",
              "#08519c","#0b4083","#08306b"]
endpts = list(np.linspace(1, 12, len(colorscale) - 1))
fips = df_sample['FIPS'].tolist()
values = df_sample['Unemployment Rate (%)'].tolist()

fig = ff.create_choropleth(
    fips=fips, values=values,
    binning_endpoints=endpts,
    colorscale=colorscale,
    show_state_data=False,
    show_hover=True, centroid_marker={'opacity': 0},
    asp=2.9, title='USA by Unemployment %',
    legend_title='% unemployed'
)

fig.layout.template = None
fig.show()

OUTPUT: enter image description here

In a similar way I just want to draw India's map with hovering values. and just want output like below... the output of INDIAN MAP: enter image description here


人物工厂create_choropleth你正在使用的方法是已弃用 https://plotly.com/python/county-choropleth/并专门与美国各县开展业务。对于其他地图,您需要用于要映射的要素的 GeoJSON。 Plotly 仅附带世界各国和美国各州的 GeoJSON 数据,因此您必须自己提供印度各州的数据。

就像您的示例分区统计图一样,让我们​​绘制截至目前每个州的活跃 COVID-19 病例数July 17 https://gist.githubusercontent.com/jbrobst/56c13bbbf9d97d187fea01ca62ea5112/raw/e388c4cae20aa53cb5090210a42ebb9b765c0a36/active_cases_2020-07-17_0800.csv(这来自indiacovid19.github.io https://indiacovid19.github.io/webarchive/mohfw/2020-07-17_0800,定期存档印度卫生部的数据)。至于 GeoJSON,快速搜索会产生一些 GitHub 存储库,但对于我们的案例数据来说,大多数存储库似乎都过时了,因为它们不包括 Dadra 和 Nagar Haveli 以及 Daman 和 Diu 的合并。幸运的是,datameet https://github.com/datameet/maps为印度各州提供了最新的 shapefile,我对其进行了一些简化以减小大小并转换为GeoJSON https://gist.githubusercontent.com/jbrobst/56c13bbbf9d97d187fea01ca62ea5112/raw/e388c4cae20aa53cb5090210a42ebb9b765c0a36/india_states.geojson using 地图塑造者 https://mapshaper.org/,然后使用翻转多边形绕组geojson-倒带 https://github.com/mapbox/geojson-rewind.

现在,正如详细的情节性文档 https://plotly.com/python/choropleth-maps/,我们可以使用plotlyexpress用我们的数据快速制作一个等值线图:

import pandas as pd
import plotly.express as px

df = pd.read_csv("https://gist.githubusercontent.com/jbrobst/56c13bbbf9d97d187fea01ca62ea5112/raw/e388c4cae20aa53cb5090210a42ebb9b765c0a36/active_cases_2020-07-17_0800.csv")

fig = px.choropleth(
    df,
    geojson="https://gist.githubusercontent.com/jbrobst/56c13bbbf9d97d187fea01ca62ea5112/raw/e388c4cae20aa53cb5090210a42ebb9b765c0a36/india_states.geojson",
    featureidkey='properties.ST_NM',
    locations='state',
    color='active cases',
    color_continuous_scale='Reds'
)

fig.update_geos(fitbounds="locations", visible=False)

fig.show()

为了对绘图进行更精细的控制,我们可以直接使用图形对象:

import pandas as pd
import plotly.graph_objects as go

df = pd.read_csv("https://gist.githubusercontent.com/jbrobst/56c13bbbf9d97d187fea01ca62ea5112/raw/e388c4cae20aa53cb5090210a42ebb9b765c0a36/active_cases_2020-07-17_0800.csv")

fig = go.Figure(data=go.Choropleth(
    geojson="https://gist.githubusercontent.com/jbrobst/56c13bbbf9d97d187fea01ca62ea5112/raw/e388c4cae20aa53cb5090210a42ebb9b765c0a36/india_states.geojson",
    featureidkey='properties.ST_NM',
    locationmode='geojson-id',
    locations=df['state'],
    z=df['active cases'],

    autocolorscale=False,
    colorscale='Reds',
    marker_line_color='peachpuff',

    colorbar=dict(
        title={'text': "Active Cases"},

        thickness=15,
        len=0.35,
        bgcolor='rgba(255,255,255,0.6)',

        tick0=0,
        dtick=20000,

        xanchor='left',
        x=0.01,
        yanchor='bottom',
        y=0.05
    )
))

fig.update_geos(
    visible=False,
    projection=dict(
        type='conic conformal',
        parallels=[12.472944444, 35.172805555556],
        rotation={'lat': 24, 'lon': 80}
    ),
    lonaxis={'range': [68, 98]},
    lataxis={'range': [6, 38]}
)

fig.update_layout(
    title=dict(
        text="Active COVID-19 Cases in India by State as of July 17, 2020",
        xanchor='center',
        x=0.5,
        yref='paper',
        yanchor='bottom',
        y=1,
        pad={'b': 10}
    ),
    margin={'r': 0, 't': 30, 'l': 0, 'b': 0},
    height=550,
    width=550
)

fig.show()
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

有什么方法可以绘制印度地图吗? 的相关文章

随机推荐

  • 对树数据进行分组、聚合和求和的最佳方法是什么?

    给定一个自引用表 Item Id pk ParentId fk 具有关联值的相关表 ItemValue ItemId fk Amount 和一些样本数据 Item ItemValues Id ParentId ItemId Amount 1
  • 提交某种类型的模型后运行函数

    我想在实例时运行一个函数Post模型已承诺 我想运行它any他们提交的时间 所以我不想在任何地方显式调用该函数 我怎样才能做到这一点 def notify subscribers post send email to subscribers
  • 在 oracle 树查询中连接其他表

    给定一个简单的 id description 表t1 比如 id description 1 Alice 2 Bob 3 Carol 4 David 5 Erica 6 Fred 以及一个父子关系表t2 比如 parent child 1
  • web2py 的多列唯一约束

    可以将特定列标记为 unique true 在 web2py 中处理多列唯一约束的最正确方法是什么 例如 假设我有一个汇率表 它可以包含 来源货币 目标货币 和 汇率 列 两行具有相同的来源和目的地货币是没有意义的 使 from to 组合
  • 共享主键

    我猜这是一个半常见的问题 但我在过去的问题列表中找不到它 我有一组需要共享主键索引的产品表 假设如下 product1 table id name category other fields product2 table id name c
  • java ProGuard 删除(收缩)未使用的类

    假设我有这个 Java 应用程序 package com site public class MyAppBase package com site free import com site MyAppBase public class My
  • 如何快速了解 SOA? [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • 如何使用 GeometryReader 而不填充视图

    这就是我想要的布局 import SwiftUI import PlaygroundSupport struct TestView View let text String var body some View Text self text
  • VBA:单击元素后无法更改图像控制图片

    Setup 我有一个带有图像控件元素的 Excel VBA 用户窗体 当单击表单中的按钮时 图像控件的Picture使用以下代码设置 更新源 Set MyForm imgControl Picture LoadPicture pathToF
  • Angular 5 - 我应该使用哪个来向后导航 - href 或 location.back()?

    我有一个应用程序 可以导航到一个无法前进的页面 想象一下 单击电视指南中的某个节目以打开包含该节目详细信息的页面 显然您会想要返回到电视指南 对于返回电视指南的按钮 我有一个 a tag 最建议的用例是 Using href guide o
  • 按日期和状态获取订单 woocommerce

    我需要获取 woocommerce 中的订单列表 包含开始日期 最终日期和状态 我尝试使用一些技术 如所描述的迈克 乔利 http develop woothemes com woocommerce 2014 08 wc 2 2 order
  • 取子集时保留 R 对象的类属性

    我有一个名为gene table的R对象 它有类foo 现在我将这个gene table子集为 gene data gene table 1 100 1 5 然而 当我打电话时class gene data 它不再属于类foo 但相反 它有
  • 为什么Python3.0中sort/sorted去掉了cmp参数?

    from 蟒蛇维基 https wiki python org moin HowTo Sorting The Old Way Using the cmp Parameter In Py3 0 the cmp parameter was re
  • 正式支持 MonoTouch 的 NoSQL 数据库

    我无法通过设备上的本地数据库找到正式支持 MonoTouch 的 NoSQL 数据库 如果是的话 有人可以在这里提供他们的名单吗 根据http nosql database org http nosql database org 有siaq
  • 尝试在jpa中删除时出现并发问题

    我有 2 个 EAR 1 EAR 和 2 EAR 这些有 websearvices 和其他代码 现在我有 1 个项目 DB prj 用于与数据库交互 现在所有项目 1 EAR 2 EAR DB prj 在各自的 meta inf 文件夹中都
  • 我的域正在 AWS Certificate Manager 中等待验证

    使用 AWS Certificate Manager 配置 mydomain com 并在等待验证中显示超过一天 即使 CNAME 记录已发布到该域名下的 AWS Route53 也是如此 一切似乎都合适 但尚不清楚 为什么域名没有得到验证
  • 404 找不到页面 codeigniter url

    我是一个使用 codeigniter 的初学者 我正在使用以下网址 http localhost ci index php shopcart http localhost ci index php shopcart 访问控制器 我收到错误
  • 验证网站所有权的简化方法(使用 JavaScript?)

    我有一个 Rails 应用程序 它要求用户在提交来自该网站的链接之前验证他们是否拥有该网站 我已经实现了一个网站验证系统 由于给出的答案 该系统可以正常工作我几个月前提出的一个问题 https stackoverflow com quest
  • Json 到 C# 对象处理动态属性

    我正在尝试在 c 对象中实现 json 结构 并且我正在尝试了解如何根据类型使用正确的对象 例如 public class RootObject public string name get set public Content conte
  • 有什么方法可以绘制印度地图吗?

    我正在尝试使用plotly 绘制印度地图 但无法找到方法来做到这一点 下面是我在美国尝试过的代码 import pandas as pd df sample pd read csv https raw githubusercontent c