我正在做一个条形图并添加图例。代码如下:
import numpy as np
import matplotlib.pyplot as plt
rectArr = list()
fig, ax_arr = plt.subplots(nrows=2, ncols=1, figsize=(8,8), constrained_layout=True)
fig.suptitle("MicCheck")
v = [0,1,2]
v1 = [1,2,3]
rectArr.append(v)
rectArr.append(v1)
rects = tuple()
ax = ax_arr[0]
ind = np.arange(len(v))
colors = ["seagreen", "red", "b", "g", "y"]
ii = 0
print(colors[ii%len(colors)])
rect = ax.bar(ind+ii*0.8, rectArr[ii], 0.18, color=tuple([colors[ii%len(colors)]],), zorder=3)
rects += tuple(rect,)
ii=1
rect = ax.bar(ind+ii*0.8, rectArr[ii], 0.18, color=(colors[ii%len(colors)]), zorder=3)
rects += tuple(rect,)
legends = ("a", "b",)
ax.legend(rects, legends, loc='upper center', bbox_to_anchor=(0.5, -0.08), ncol=3 )
plt.show()
我得到的问题是,图例元素具有与下图相同的颜色:为什么?
import numpy as np
import matplotlib.pyplot as plt
rectArr = list()
fig, ax_arr = plt.subplots(nrows=2, ncols=1, figsize=(8,8), constrained_layout=True)
fig.suptitle("MicCheck")
v = [0,1,2]
v1 = [1,2,3]
rectArr.append(v)
rectArr.append(v1)
rects = tuple()
ax = ax_arr[0]
ind = np.arange(len(v))
colors = ["seagreen", "red", "b", "g", "y"]
ii = 0
legends = ("a", "b",)
print(colors[ii%len(colors)])
rect = ax.bar(ind+ii*0.8, rectArr[ii], 0.18, color=tuple([colors[ii%len(colors)]],), zorder=3, label=legends[0])
rects += tuple(rect,)
ii=1
rect = ax.bar(ind+ii*0.8, rectArr[ii], 0.18, color=(colors[ii%len(colors)]), zorder=3, label=legends[1])
rects += tuple(rect,)
patches, labels = ax.get_legend_handles_labels()
#ax.legend(loc='upper center', bbox_to_anchor=(0.5, -0.08), ncol=3 )
ax.legend(patches, legends, loc='upper center' )
plt.show()
要获得两种颜色,您只需修改图例的绘制方式
例如
ax.plot(x, v, label='a = red') #plot one array
ax.plot(x, v1, label='b =green') #plot 2nd array
#ax.legend()..
plt.show()
有关更多示例,请参见我的其他类似答案。
希望这有帮助
我试图在两个图上绘制熊猫数据帧。一个是matplotlib pyplot饼图,另一个是seaborn条形图。在每个图表上,我根据不同的列对数据框进行排序。此外,每个图表都代表数据框排序所依据的相应值。因此,两个图表中的行顺序不同。这样,数据框中相同的索引(或类别)在图表上以不同的颜色出现,这是令人困惑的。为了在不同的图表上有相同颜色的索引,我如何解决这个问题? 我的代码: 例如,1.1。15200
总体上对matplotlib真的很困惑。我通常只使用导入matplotlib.pyplot作为plt。 然后做plt.figure(),plt.scatter(),plt.xlabel(),plt.show()等等。但是我在谷歌上搜索如何做一些事情,比如用颜色映射图例,我得到了所有这些包括ax的例子。但是有plt.legend(),matplotlib留档中的例子只是显示plt.legend(句柄
问题内容: 我开始使用本教程为初学者学习MatPlotLib 。这是第一个例子。 如果我将这三行代码写入我的python文件并在命令行中执行(通过键入),则什么都不会发生。没有错误信息,没有情节。 有人知道我为什么看不到情节吗? 添加 当然我需要用。但是,即使我添加以下3行: 它仍然不产生任何东西。 添加 这是我现在使用的行: 我仍然有相同的结果(什么都没有)。 问题答案: 后端可能有问题。输出是
我有下面的xml结构: 有不同的 Field(X) 包装器元素,它们包含相同的用户元素。XML 中可以发送 n 个字段。因此,我不能为每个单独的Jaxb。我需要访问用户,但在取消编组步骤后忽略 Field 元素。不幸的是,我无权更改xml结构。我无法找到解决方案。任何指针都会有所帮助。
我使用Matplolib和熊猫数据帧创建了一个散点图,现在我想给它添加一个图例。这是我的代码: 这里发生的是,根据,散点图中点的颜色将改变。所以,因为颜色是“动态的”,我在创造传奇时遇到了很多麻烦。实际的代码只会创建一个带有一个名为“测试”的标签的图例,而附近没有任何颜色。 以下是数据示例: 我试过了,但我不明白的是: > 如何动态设置图例的标签?例如,我的代码说
问题内容: 我的类中有很多div,并且我想使用jquery遍历它们以检查每个div是否满足特定条件。如果为真,则应执行一个操作。 有人知道我会怎么做吗? 问题答案: 使用每个:’ ‘是数组中的位置,是您要迭代的DOM对象(也可以通过jQuery包装器进行访问)。 检查api参考以获取更多信息。