python如何填充颜色_如何根据Matplotlib中的变量用颜色填充多边形?

博主正在尝试使用Python的shapefile和matplotlib库来绘制建筑物的多边形,并根据楼层数量填充不同颜色。目标是使楼层数少的建筑物呈现较浅颜色,楼层数多的建筑物呈现较深颜色,颜色变化随着楼层数量递增。目前的代码仅绘制了多边形轮廓,尚未实现颜色填充。寻求帮助以实现基于楼层数的颜色渐变填充效果。
摘要由CSDN通过智能技术生成

我一直在使用一个shapefile,它有几个建筑物顶点的x和y坐标,我使用Matplotlib将它们绘制为多边形。但是,我想用红色/灰色/或任何其他颜色的阴影填充这些多边形,这取决于每个建筑的层数。例如,最小楼层数为零,因此所有楼层为零的建筑物都将是非常浅的颜色。另一方面,最大楼层数是100层,因此所有100层的建筑物都会绘制非常暗的图,在0到100之间,多边形会随着楼层数的增加绘制得越来越暗。

我在网上找到了一些东西,但没有什么能具体解决这个问题。我是Python的新手,所以也许我只是不知道什么样的库可以满足我的需要。

我现在的代码是:(它只绘制多边形,不填充)import shapefile

import matplotlib.pyplot as plt

import numpy as np

i = 0

sf = shapefile.Reader('shapefile')

sr = sf.shapeRecords()

max = 10

while i < max:

sr_obj = sr[i]

sr_points = np.array(sr_obj.shape.points)

records = sf.record(i)

numfloors = records[42]

x = sr_points[:,0]

y = sr_points[:,1]

sr_plot = zip(*sr_points)

plt.plot(*sr_plot)

i = i + 1

plt.show()

谢谢你!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值