gpt4 book ai didi

python - 散点图python双边缘线

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

我有一个如下所示的散点图,我希望我的散点图有双边缘,而不必在这个散点图的顶部创建具有相同坐标的相同散点图。我找不到如何将双线作为边缘。

import numpy as np
import matplotlib.pyplot as plt


N = 50
x = np.random.rand(N)
y = np.random.rand(N)
colors = np.random.rand(N)


plt.scatter(x, y, s=400, c=colors,marker='h' alpha=0.5,edgecolors='black',linewidth=1)
plt.show()

这个问题的主要原因来 self 的一个错误:当我用相同的坐标叠加散点图时,我创建的新图往往会略微修改它们的位置并且不能完美地相互吻合 bad fit

当背景标记有 facecolors='' 时,这个错误不会显示,但只有当它有 facecolors='w' 时才会显示,这对我来说是个问题。

最佳答案

这似乎确实是一个错误。

一个可能的解决方案是使用 colors 参数来绘制白色散点。

import numpy as np
import matplotlib.pyplot as plt

N = 50
x = np.random.rand(N)
y = np.random.rand(N)
colors = np.random.rand(N)
whites = [[1,1,1]]*N

plt.scatter(x, y, s=400, c=whites, marker='h', alpha=0.5,edgecolors='black',linewidth=1)
plt.scatter(x, y, s=260, c=colors, marker='h', alpha=0.5,edgecolors='black',linewidth=1)

plt.show()

enter image description here


根据应用,使用特殊符号作为标记也可能是一种选择。参见 this questioncomplete list .

import matplotlib.pyplot as plt

N = 4
x = [1,1,2,2]
y = [1,2,1,2]
symbols = [ur"$\u27C1$", ur"$\u25C8$", ur"$\u229A$", ur"$\u29C8$"]

for i in range(N):
plt.scatter(x[i], y[i], s=400, c=(i/float(N), 0, 1-i/float(N)), marker=symbols[i], alpha=0.5,linewidth=1)
plt.show()

enter image description here

关于python - 散点图python双边缘线,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42469114/

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