Arg*_*ina 2 python alpha matplotlib alpha-transparency
我正在用matplotlib绘制数据,我从两个numpy数组中获得了一个散点图:
ax1.scatter(p_100,tgw_e100,color ='m',s = 10,label ="time 0")
我想补充一下每个点的偏心率信息.为了这个目的,我具有相同长度的第三阵列p_100和tgw_e100,ecc_100其项目范围从0到1.
因此,我想使用ecc_100创建某种阴影比例的数据来设置我的点的透明度.
我试过这个:
ax1.scatter(p_100,tgw_e100,color='m',alpha = ecc_100,s=10,label="time 0")
Run Code Online (Sandbox Code Playgroud)
但我得到了这个错误:
ValueError: setting an array element with a sequence.
Run Code Online (Sandbox Code Playgroud)
根据文档, alpha只能是标量值.
因此,我看不到任何其他方式,而是逐个循环你的所有观点.
for x, y, a in zip(p_100, tgw_e100, ecc_100):
ax1.scatter(x, y, color='m',alpha = a, s=10)
Run Code Online (Sandbox Code Playgroud)
我认为标签会很奇怪,所以你可能需要手工创建传奇.我从我的解决方案中省略了
我想一个补丁来使alpha关键字参数表现得像c并且s欢迎.
2015年5月6日更新
根据此问题,更改alpha为接受阵列不会发生.错误报告建议通过RGBA数组设置颜色以控制alpha值.这听起来比我自己绘制每个点的建议要好.
c = np.asarray([(0, 0, 1, a) for a in alpha])
scatter(x, y, color=c, edgecolors=c)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
7565 次 |
| 最近记录: |