创建智利地区的svg choropleth
clchoropleth的Python项目详细描述
氯氯丙烷
它创建了一个智利地区的svg choropleth。
说明
你需要一本字典或一只熊猫。用这些值串联起来索引或键可以是comuna名称和int值。包使用“clcomuna”获取comuna代码,并为值创建bin。即使数据中有孔国家的孔,也可以指定孔国家的孔区域。
安装
pip3 install clchoropleth
要求
- clcomuna
- 熊猫
- bf4(美化组)
- Python3.3+
用法:
>>> import clchoropleth
示例
import clchoropleth arica = {'ARICA': 27, 'CAMARONES': 13, 'GENERAL LAGOS': 10, 'PUTRE': 8} data = clchoropleth.prepare_data(arica) clchoropleth.run(data, "arica.svg", "15")
这将保存类似于以下内容的svg文件:
准备数据
def prepare_data(data, t=70, noNone=False):
准备数据集。如果是字典,它会把它变成pandas.series对象。 它检查comuna名称并使用其代码。可以指定clcomuna包的阈值。 它按comuna代码聚合,因此,对于exmaple,如果有{'arica':10,'Arica':11,'ARICA':12},它将返回'arica':33作为pd.series。 它可以将“无”降低到阈值以下。 返回PD序列
arica = {'ARICA': 27, 'CAMARONES': 13, 'GENERAL LAGOS': 10, 'PUTRE': 8, 'arica': 33} clchoropleth.prepare_data(arica) >>> 15101 60 15102 13 15201 8 15202 10 dtype: int64
select_comunas_from_region
def select_comunas_from_region (data, region):
给定数据集(在准备数据之后),返回一个子集,其中只有来自给定区域的comuna“region”必须是字符串
data = {'ARICA': 27, 'CAMARONES': 13, 'GENERAL LAGOS': 10, 'PUTRE': 8, 'arica': 33, 'iquique': 123, 'santiago': 999} data_p = prepare_data(data) data_p >>> 01101 123 13101 999 15101 60 15102 13 15201 8 15202 10 dtype: int64 select_comunas_from_region(data_p, "15") >>> 15101 60 15102 13 15201 8 15202 10 dtype: int64
离散化
def discretize(data, bins=5, quantile=False):
将数据值更改为箱号。您可以指定要使用的存储箱数量,以及是否使用基于“五分位数”的剪切。
arica >>> 15101 60 15102 13 15201 8 15202 10 dtype: int64 discretize(arica) >>> 15101 4 15102 0 15201 0 15202 0 dtype: category Categories (5, int64): [0 < 1 < 2 < 3 < 4] discretize(arica, 4, True) >>> 15101 3 15102 2 15201 0 15202 1 dtype: category Categories (4, int64): [0 < 1 < 2 < 3]
制作地图
def make_map(data, filename, region, colors='orange'):
它创建choropleth映射并将其保存到文件名目的地。
- 参数:
数据:包含数据的pd序列索引必须是代码,值必须是箱号。
文件名:我们要保存的地图的文件名。
region:我们需要再次指定区域,作为字符串(“09”),以打开原始svg文件并对其进行修改。
颜色:如果是5个预设颜色列表之一,则可以是字符串: 橙色,蓝色,绿色,红色,瘙痒。或者它可以是一个字符串列表,每个字符串都是一种颜色。例如:['ffffcc'、'c2e699'、'78c679'、'31a354'、'006837'] 它的长度必须与垃圾箱的数量相同。 更多颜色:http://colorbrewer2.org/
- 返回:
- 它保存地图。无返回值。
运行
def run(data, filename, region, colors='orange', bins=5, quantile=False):
是一个包装函数,它运行模块的所有其他函数,除了“prepare_data”不退还任何东西。