我使用此代码生成雷达图表:Radar chart with multiple scales on multiple axes;现在我想将此图表放在2x1数字设置的右下角。使用以下代码:
fig = pl.figure(figsize=(5, 5))
titles = ['A','B','C','D','E','F']
parameters_list = ['','2','','4','','6','','8','','10']
labels = [parameters_list, parameters_list, parameters_list,parameters_list,parameters_list,parameters_list]
radar = Radar(fig, titles, labels)
pl.subplot(2, 1, 1)
radar.plot([1, 3, 2, 5, 4, 9], "-", lw=2, color="r", alpha=0.4, label="first")
pl.subplot(2, 1, 2)
radar.plot([3, 6, 4, 1, 1, 2], "-", lw=2, color="y", alpha=0.4, label="second")
这会产生两个空白框,而我想得到两个雷达图,一个在另一个之上(见下面的链接)。
[1]:http://i.stack.imgur.com/oaXzf.png - 两个空白框
如果我尝试创建单个雷达图表,则代码可以正常工作(请参阅下面的代码和链接):
fig = pl.figure(figsize=(5, 5))
titles = ['A','B','C','D','E','F']
parameters_list = ['','2','','4','','6','','8','','10']
labels = [parameters_list, parameters_list, parameters_list,parameters_list,parameters_list,parameters_list]
radar = Radar(fig, titles, labels)
radar.plot([1, 3, 2, 5, 4, 9], "-", lw=2, color="r", alpha=0.4, label="first")
radar.ax.legend()
[2]:http://i.stack.imgur.com/LnL6e.png - 雷达图正常工作
如何将两张雷达图一个放在另一个上面?或者如何在子图中插入雷达,而其他子图显示不同类型的图表?
答案 0 :(得分:0)
由于您使用的是Radar chart with multiple scales on multiple axes中HYRY答案中给出的Radar
课程,因此以下是使用该解决方案的解决方案:
fig = pl.figure(figsize=(5, 5))
titles = ['A','B','C','D','E','F']
parameters_list = ['','2','','4','','6','','8','','10']
labels = [parameters_list, parameters_list, parameters_list,parameters_list,parameters_list,parameters_list]
radar = Radar(fig, titles, labels, rect=[0.0, 0.55, 0.5, 0.45])
radar.plot([1, 3, 2, 5, 4, 9], "-", lw=2, color="r", alpha=0.4, label="first")
radar = Radar(fig, titles, labels, rect=[0.0, 0.0, 0.5, 0.45])
radar.plot([3, 6, 4, 1, 1, 2], "-", lw=2, color="y", alpha=0.4, label="second")
结果:
我在该类中使用了可选的rect
参数,该参数提供了[left, bottom, width, height]
相对于完整数字的大小。
这样做之后,我不知道为什么你选择使用一个用于显示多个音阶的类,因为你似乎只有一个音阶(在labels
数组中重复了6次),所以我必须假设你有充分的理由。