抑郁症健康,内容丰富有趣,生活中的好帮手!
抑郁症健康 > python 画雷达图设置背景颜色

python 画雷达图设置背景颜色

时间:2023-05-24 04:18:18

相关推荐

python画图简直逼死(学艺不精的)强迫症啊,我这一下午被搞疯了…

应该是matplotlib版本的原因吧,我的雷达图画出来总是灰底的,不好看啊,想要白底的雷达图 。

代码:

def radarplot(name,tag,values, feature):# 设置每个数据点的显示位置,在雷达图上用角度表示angles=np.linspace(0, 2*np.pi,len(values), endpoint=False)# 拼接数据首尾,使图形中线条封闭values=np.concatenate((values,[values[0]]))angles=np.concatenate((angles,[angles[0]]))fig=plt.figure(dpi=150)c = 'g'if max(tag)>=2:if max(tag)>=4:c = 'r'else:c = 'y'ax = fig.add_subplot(111, polar=True)# 绘制线条plt.polar(angles, values,'ro-',color = c,linewidth=2)# 填充颜色ax.fill(angles, values,color=c,alpha=0.25) ax.set_thetagrids(angles * 180/np.pi)# 设置坐标轴名称及颜色ax.set_xticklabels(feature,color='black')

看看这个丑娃:

但是感觉为了一个图,更换matplotlib没必要,于是只能曲线救国,哪里的颜色不喜欢就改哪里呗。(说着简单,研究了半天…)

施加魔法:

代码加如下语句,就可以了。相当于上面那个雷达图底色是灰色,我们改为白色,上面雷达图的网格线为白色,我们改成灰色。

# 设置雷达图底色ax.set_facecolor('w')# 设置雷达图网格颜色ax.grid(color="gray")

def radarplot(name,tag,values, feature):# 设置每个数据点的显示位置,在雷达图上用角度表示angles=np.linspace(0, 2*np.pi,len(values), endpoint=False)# 拼接数据首尾,使图形中线条封闭values=np.concatenate((values,[values[0]]))angles=np.concatenate((angles,[angles[0]]))fig=plt.figure(dpi=150)c = 'g'if max(tag)>=2:if max(tag)>=4:c = 'r'else:c = 'y'ax = fig.add_subplot(111, polar=True)# 绘制线条plt.polar(angles, values,'ro-',color = c,linewidth=2)# 填充颜色ax.fill(angles, values,color=c,alpha=0.25) ax.set_thetagrids(angles * 180/np.pi)# 设置雷达图底色ax.set_facecolor('w')# 设置雷达图网格颜色ax.grid(color="gray")# 设置坐标轴名称及颜色ax.set_xticklabels(feature,color='black')

变身:

好看多了…其实还有地方很难受,仔细看可以看到轴线都有露出来一点小尖尖,但是心好累[捂脸],不管了不管了。

我画图的时候还遇到雷达图把label盖住的问题,如下图,也是百度半天无果,就很蠢地用空格来移动文字位置来解决了。

类似这样:

feature = ['功率波动 ','功率系数 ','机舱振动有效值','X轴机舱振动','Y轴机舱振动',' 前轴承温度','后轴承温度','绕组温度']

然后就可以得到倒数第二张图了。

虽然看着是真蠢,不过暂时解决了我的问题,机智的解决方法之后有机会再研究吧。

如果觉得《python 画雷达图设置背景颜色》对你有帮助,请点赞、收藏,并留下你的观点哦!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。