我想在pyqt GUI中为matplotlib(python)中的多个绘图创建一个自定义图例。(pyqt建议不要使用pyplot,因此必须使用面向对象的方法)。
网格中将显示多个绘图,但用户可以定义要显示的绘图数量。我希望图例显示在所有绘图的右侧,因此我不能简单地为最后绘制的轴创建图例。我希望为整个图形创建图例,而不仅仅是最后一个轴(类似于pyplot中的plt.figlegend)。
在我在别处看到的示例中,这需要引用绘制的线。同样,我不能这样做,因为用户可以选择在图形上显示哪些线,我希望图例总是显示所有可能的线,无论它们当前是否显示。
(注意下面的示例代码使用pyplot,但我的最终版本不能)
import matplotlib.pyplot as plt
import matplotlib.lines as mlines
import numpy as np
fig = plt.figure()
# Create plots in 2x2 grid
for plot in range(4):
# Create plots
x = np.arange(0, 10, 0.1)
y = np.random.randn(len(x))
y2 = np.random.randn(len(x))
ax = fig.add_subplot(2,2,plot+1)
plt.plot(x, y, label="y")
plt.plot(x, y2, label="y2")
# Create custom legend
blue_line = mlines.Line2D([], [], color='blue',markersize=15, label='Blue line')
green_line = mlines.Line2D([], [], color='green', markersize=15, label='Green line')
ax.legend(handles=[blue_line,green_line],bbox_to_anchor=(1.05, 0), loc='lower left', borderaxespad=0.)
如果我换斧头。图例到:fig.legend(句柄=[蓝色线,绿色线]),然后python生成错误:
TypeError:legend()至少接受3个参数(给定2个)
(我猜是因为直线点没有被引用)
谢谢你提供的任何帮助-我已经看了一个星期了!
您得到的错误是因为图。图例要求您同时传递
句柄和
标签。
从文档中:
图例(手柄、标签、*args、**kwargs)
在图中放置图例。
标签
是一个字符串序列,句柄
是一个Line2D
或Patch
实例序列。
以下作品:
# Create custom legend
blue_line = mlines.Line2D([], [], color='blue',markersize=15, label='Blue line')
green_line = mlines.Line2D([], [], color='green', markersize=15, label='Green line')
handles = [blue_line,green_line]
labels = [h.get_label() for h in handles]
fig.legend(handles=handles, labels=labels)
我目前使用matplotlib以以下方式生成图例: 这在某种程度上是可行的,见1。但我在我的传奇中复制了信息。 我宁愿把传说分开。所以我有不同颜色的线对应于时间t,一条法线作为我的解析解,一个点作为我的模拟结果。 诸如此类 --(红线)t=25 --(蓝线)t=50 --(绿线)t=500 模拟 --解析解 现在有人知道我如何用matplotlib实现这一点了吗?
我有几个绘图函数,每个函数都接收不同类型的数据并用自己的标题和图例进行绘图。然而,当我试图在同一个图形上绘制它们时,前一个图形被覆盖。 我知道这样做的一种方法是调用,但是由于图例是在函数内部创建的,所以这似乎是不可能的。是否有任何类型的可以执行此操作?从每个绘图中检索图例并在图形上显示它们?我应该从每个函数返回图例吗? 这是我所拥有的简化代码: 我不确定这是否是最好的方法,但由于我多次使用这些绘图
本文向大家介绍自定义matplotlib图,包括了自定义matplotlib图的使用技巧和注意事项,需要的朋友参考一下 示例
我正在绘图中绘制多个多边形: 结果图正确地显示了我的多边形,但我想知道哪个多边形对应于图上的哪个索引(例如:绿色多边形是处的多边形)。理想情况下,我想要一个将多边形的颜色与其索引关联起来的图例,但我不知道如何在这样的循环中添加这样的图例。我试过但这不起作用。 多边形的数量是可变的,所以严格分配颜色是不可能的。 如何添加图例?
我正在使用helm charts创建部署微服务,通过执行helm create创建包含部署、服务和入口的基本图表,但我没有其他配置,如水平pod自动缩放器、pod中断预算。
问题内容: 我需要为同一张图片启动多个容器。如果我如下所示创建我的撰写文件,它可以正常工作。 我有什么简单的方法可以提及撰写实例的数量,而不是多次复制和粘贴? 问题答案: 更新的答案(2017年10月) 正如其他人提到的那样,docker API已更改。我正在更新我的答案,因为这是大多数人可能会看到的答案。 不幸的是,我们目前无法在docker-compose.yml文件中指定此版本(从3.5版开