jenkspy包安装

博主在尝试使用jenkspy实现ArcGIS的自然断点法时遇到了多版本Python共存、版本不匹配、缺少VC++编译器等问题。通过切换Python环境、选择兼容版本、安装VCForPython27.msi解决编译问题,并修改jenkspy源码以适应Python2环境。最终成功运行并展示了jenkspy的代码实践。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

jenkspy包安装避坑*

用jenkspy实现arcgis中的自然断点法,安装过程中出现了很多问题:

坑一:我的电脑配有Python2.7,Python3.9两个环境,如果直接pip install jenkpy ,那么系统显示unable to create…,就是说系统区分不了pip是python2还是python3的路径

如何设置多个python环境

坑二:解决一后,我在python3环境下进行安装 python3 -m pip install jenkspy,显示的错误是无法安装该tar.gz文件,后来发现是python版本与之不匹配,jenkspy最新版只支持到3.8,恰好没有3.9的版本。。。有低于3.9版本的应该可以直接装,如果显示runtimeerror,可以根据python版本去下载对应的压缩包,链接为:

jenkspy

坑三:我不想重装3.8的python版本,于是尝试用python2下载,结果显示新错误:Microsoft Visual C++ 9.0 is required。。然后全网找资源,找到了VCForPython27.msi8进行下载,然后问题成功解决。

在这里插入图片描述

坑四:虽然装上了,但是运行会报错,所以我修改了core.py的源码后,可以成功运行了:

from collections.abc import Iterable
改为from collections import Iterable

from math import isfinite
改为 import math

values = [i for i in values if isfinite(i)]
改为values = [i for i in values if np.isfinite(i)]

代码实践

import jenkspy
import random

''' jenks_breaks(
            [1.3, 7.1, 7.3, 2.3, 3.9, 4.1, 7.8, 1.2, 4.3, 7.3, 5.0, 4.3],
            nb_class = 3)  # Should output (1.2, 2.3, 5.0, 7.8)
'''
list_of_values = [1.3, 7.1, 7.3, 2.3, 3.9, 4.1, 7.8, 1.2, 4.3, 7.3, 5.0, 4.3]
breaks = jenkspy.jenks_breaks(list_of_values, nb_class=3)
print(breaks)

运行结果正确:
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值