【问题标题】:Matplotlib: how to change alpha of edges onlyMatplotlib:如何仅更改边缘的 alpha
【发布时间】:2019-07-03 16:50:33
【问题描述】:

我有一个散点图:

x=[0.1,0.2,0.3,0.4]
y=[0.1,0.3,0.4,0.6]

我想绘制它在每个点上增加透明度,所以我使用了

plt.scatter(x,y,alpha =0.5, marker='o',color='g', markersize=12)

但是,发生的情况是,我得到了充满绿色且通透透明的圆圈。我想要得到的是仅在内部区域的透明度,并且边缘确实可见,因此如果我有可能彼此靠近的点,我总是可以看到边界。 有什么办法吗?

【问题讨论】:

    标签: python-2.7 matplotlib alpha figure


    【解决方案1】:

    您可以单独指定边缘颜色和面颜色。对于 facecolor,您可以选择 alpha 小于 1 的颜色。要指定这种颜色,请使用 RGBA (red,green,blue,alpha) 元组。

    import matplotlib.pyplot as plt
    
    x=[0.1, 0.105, 0.2, 0.3, 0.4]
    y=[0.1, 0.095, 0.3, 0.4, 0.6]
    
    plt.scatter(x,y, s=144, marker='o', edgecolor='g', facecolor=(0,1,0,0.5), )
    
    plt.show()
    

    【讨论】:

    • 没有意识到 facecolor 的最后一个值是 alpha。谢谢
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2020-08-14
    • 1970-01-01
    • 1970-01-01
    • 2016-11-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多