gpt4 book ai didi

python - 将线宽设置为 matplotlib 中数据的函数

转载 作者:太空宇宙 更新时间:2023-11-04 06:42:54 24 4
gpt4 key购买 nike

我想在 matplotlib 中构建一个 hexbin 图,其中每个六边形的线条宽度是落入该六边形的观测值数量的函数。我认为这对于向 hexbin 图添加额外的推理级别很有用。

到目前为止,我有以下代码:

import numpy as np
import matplotlib.pyplot as plt

x = np.random.uniform(0,1,1000)
y = np.random.uniform(0,1,1000)
z = np.random.uniform(0,1,1000)

fig = plt.figure()
ax = fig.add_subplot(1,1,1)
ax.hexbin(x , y, C = z, gridsize=50, edgecolors='white')

这会创建一个 hexbin 图,其中 bin 的颜色是 bin 中 x,y 对的平均 z 值的函数。

有没有一种方法可以将六角形的线宽设置为每个六角形中观测值数量的函数?

最终,我希望为人口较少的六角形使用较粗的线条。这应该会导致更小的可见六边形。

最佳答案

只需将线宽作为与x, y 长度相同的数组即可。

import numpy as np
import matplotlib.pyplot as plt

x = np.random.uniform(0,1,10)
y = np.random.uniform(0,1,10)
z = np.random.uniform(0,1,10)
LineWidths = np.random.uniform(1, 6, 10)

fig = plt.figure()
ax = fig.add_subplot(1,1,1)
ax.hexbin(x , y, C = z, gridsize=50, edgecolors='black',
linewidths=LineWidths)

enter image description here

我将它们设为黑色以说明效果。您将需要定义线宽以适合您想要的应用。

我会提到在使用散点图时控制标记的大小要容易得多 as demonstrated in this SO post .因此,除非您对 hexplot 有其他用途(我承认不知道它们的重要性),否则这会容易得多。

关于python - 将线宽设置为 matplotlib 中数据的函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23351631/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com