首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Matplotlib with "secondary_y":如何将图例重新定位到左下角?

在Matplotlib中,可以使用"secondary_y"参数来创建具有两个y轴的图表。要将图例重新定位到左下角,可以使用legend()函数的loc参数来指定图例的位置。

以下是将图例重新定位到左下角的步骤:

  1. 导入必要的库和模块:
代码语言:txt
复制
import matplotlib.pyplot as plt
  1. 创建一个图表对象和两个子图对象:
代码语言:txt
复制
fig, ax1 = plt.subplots()
ax2 = ax1.twinx()
  1. 绘制数据到两个子图对象上:
代码语言:txt
复制
ax1.plot(x, y1, 'r-', label='y1')
ax2.plot(x, y2, 'b-', label='y2')
  1. 合并两个子图的图例:
代码语言:txt
复制
lines, labels = ax1.get_legend_handles_labels()
lines2, labels2 = ax2.get_legend_handles_labels()
ax2.legend(lines + lines2, labels + labels2, loc='lower left')

完整的代码示例:

代码语言:txt
复制
import matplotlib.pyplot as plt

# 数据
x = [1, 2, 3, 4, 5]
y1 = [10, 20, 30, 40, 50]
y2 = [5, 10, 15, 20, 25]

# 创建图表和子图
fig, ax1 = plt.subplots()
ax2 = ax1.twinx()

# 绘制数据到子图上
ax1.plot(x, y1, 'r-', label='y1')
ax2.plot(x, y2, 'b-', label='y2')

# 合并图例到左下角
lines, labels = ax1.get_legend_handles_labels()
lines2, labels2 = ax2.get_legend_handles_labels()
ax2.legend(lines + lines2, labels + labels2, loc='lower left')

# 显示图表
plt.show()

这样,图例就会被重新定位到左下角。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

详解pandas.DataFrame.plot() 画图函数

loglog=False, xticks=None, yticks=None, xlim=None, ylim=None, rot=None, xerr=None,secondary_y...boolean, default None (matlab style default)#图片是否有网格 Axis grid lines legend : False/True/'reverse'#子图的图例...,添加一个subplot图例(默认为True) Place legend on axis subplots style : list or dict#对每列折线图设置线的类型 matplotlib line...If True, create stacked plot. sort_columns : boolean, default False # 以字母表顺序绘制各列,默认使用前列顺序 secondary_y...到此这篇关于详解pandas.DataFrame.plot() 画图函数的文章就介绍这了,更多相关pandas.DataFrame.plot( )画图内容请搜索ZaLou.Cn以前的文章或继续浏览下面的相关文章希望大家以后多多支持

5.1K61
  • Matplotlib-SuperShow

    matplotlib官方有一份短小精悍的小文档,今天分享的就是这个: 官网的左下角有 自带的绘图指南真的很好,分享给大家: 图像的绘制一般都是这样的过程,先导入绘制的库,准备我们要用的数据,将画布建立好...这些是基础的图 可以在图里面修改任意你看到的东西 可以在图里面绘制多个数据 可以轻松的加图例 可以将精美的图片保存下来 让我们以一个小demo开始 这里报错了,原因是mxnet这个库,是和...我在报错的过程中找到,在win安装,需要VS 打开安装 库其实就是一个pip的命令 选择这些就OK 下载安装 我至今没有登陆 重新再VS的帮助下编译numpy 这样就算安装完成了 OK...+ x**5 + y**3) * np.exp(-(x**2 + y**2)) Z2 = func3(X, Y) Z2就是这里传入的参数 当然还有高级的绘图功能 数据在轴上面的缩放形式 立体平面的映射转换...不同的线形 上面不同的标记 不同的颜色定义 颜色空间的变换 刻度给了数据量化的准则 上面是定位,下面是格式 图例 颜色条 对图像的注释 就像这样 这样 高级文本框标注

    1.3K10

    基于geopandas的空间数据分析—geoplot篇(上)

    extent:元组型,用于传入左下角和右上角经纬度信息来设置地图空间范围,格式为(min_longitude, min_latitude, max_longitude, max_latitude) figsize...映射房源价格色彩上 将房源价格列作为色彩映射列,使用mapclassify中的分位数法将价格区间等分成五段,并使用其他的视觉参数和自定义图例参数: import mapclassify as mc...看完了如何映射颜色,下面我们来看看如何将值映射到散点大小上,使用scale='price'来将房源价格映射到散点大小上,再配合一些相关参数进行绘图: import numpy as np # 简单绘制波士顿行政区划...值得注意的是在我们映射值散点大小上时,默认条件下会自动在图例中按照等间距法分出5段,这样得到的图例各个圆圈大小过渡保证了均匀。...数据预处理部分分步骤代码较多,不便在文章中全盘放出,你可以文章开头的Github仓库中对应路径下查看和下载。

    2.2K30

    (数据科学学习手札82)基于geopandas的空间数据分析——geoplot篇(上)

    ,提供了众多高度封装的绘图API,很大程度上简化了绘图难度,就像seaborn之于matplotlib。...extent:元组型,用于传入左下角和右上角经纬度信息来设置地图空间范围,格式为(min_longitude, min_latitude, max_longitude, max_latitude)...映射房源价格色彩上   将房源价格列作为色彩映射列,使用mapclassify中的分位数法将价格区间等分成五段,并使用其他的视觉参数和自定义图例参数: import mapclassify as mc...映射房源价格尺寸上   看完了如何映射颜色,下面我们来看看如何将值映射到散点大小上,使用scale='price'来将房源价格映射到散点大小上,再配合一些相关参数进行绘图: import numpy...现在我们可以一眼看出那些半径较大的圆圈对应着价格较高的房源,值得注意的是在我们映射值散点大小上时,默认条件下会自动在图例中按照等间距法分出5段,这样得到的图例各个圆圈大小过渡保证了均匀,当然你也可以自由地通过

    2.3K20

    Matplotlib 中文用户指南 4.5 标注

    | 参数 | 坐标系 | | 'figure points' | 距离图形左下角的点数量 | | 'figure pixels' | 距离图形左下角的像素数量 | | 'figure fraction...' | 0,0 是图形左下角,1,1 是右上角 | | 'axes points' | 距离轴域左下角的点数量 | | 'axes pixels' | 距离轴域左下角的像素数量 | | 'axes...或者,你可以通过在可选关键字参数arrowprops中提供箭头属性字典来绘制从文本注释点的箭头。...例如,(0,0)表示左下角,(1,1)表示右上角。 源代码 将艺术家放置在轴域的锚定位置 有一类艺术家可以放置在轴域的锚定位置。 一个常见的例子是图例。...源代码 如图例所示,可以设置bbox_to_anchor参数。 使用HPacker和VPacker,你可以像图例中一样排列艺术家(事实上,这是图例的创建方式)。

    1.1K50

    为你的图片添加图例

    图例可以帮助我们更好的理解图中的信息,在matplotlib中,通过legend函数来添加图例,有以下两种用法 1....对于图例而言,我们最常修改的属性就是图例的位置了,在matplotlib中,可以通过以下loc参数来调整图例的位置,有两种设置方式,第一种用表示位置的字符串来定义图例位置,纵向的位置用lower,center...第二种设置方式通过两个01的浮点数,来指定图例左下角在axes中的位置,将axes的左下角视为(0, 0), 将右上角视为(1, 1), 用法如下 >>> x = np.linspace(0, 2 *...legend函数实际上有两种方法,axes,legend和figure.legend, 上面的代码都是调用的axes.legend, 所以实在axes的范围内设置图例,当我们想要实现图例在axes之外时...(x), label='sin') >>> plt.plot(x, np.cos(x), label='cos') >>> legend = plt.legend() >>> legend <matplotlib.legend.Legend

    1.2K50

    Matplotlib自定义坐标轴刻度的实现示例

    虽然 Matplotlib 默认的坐标轴定位器(locator)与格式生成器(formatter)可以满足大部分需求,但是并非对每一幅图都合适。...此次我将通过一些示例演示如何将坐标轴刻度调整为你需要的位置与格式。 在介绍示例之前,我们最好先对 Matplotlib 图形的对象层级有更深入的理解。...根据设置的最多刻度数量,Matplotlib 会自动为刻度安排恰当的位置: # 为每个坐标轴设置主要刻度定位器 for axi in ax.flat: axi.xaxis.set_major_locator...从 min max 均匀分布刻度 LogLocator 从 min max 按对数分布刻度 MultipleLocator 刻度和范围都是基数(base)的倍数 MaxNLocator 为最大刻度找到最优位置...自定义坐标轴刻度的实现示例的文章就介绍这了,更多相关Matplotlib自定义坐标轴刻度内容请搜索ZaLou.Cn以前的文章或继续浏览下面的相关文章希望大家以后多多支持ZaLou.Cn!

    9K30

    使用Matplotlib绘制图的常见问题和答案

    Matplotlib是最受欢迎的二维图形库,但有时让你的图变得像你想象中好并不容易。 如何更改图例上的标签名称?如何设置刻度线?如何将刻度更改为对数刻度?如何在我的图中添加注释和箭头?...本文收集了有关如何自定义Matplotlib图的常见问题和答案。这可以作为快速进行Matplotlib绘图的一个很好的速查表,而不是Matplotlib库的完整介绍。如果你不熟悉此库,请查看官方文档。...本文介绍的主题包括图和图的属性,坐标轴,图例,注释和保存图。 开始 首先,请确保导入matplotlib。...alpha的设置范围为01,其中0表示完全透明,1表示不透明。 plt.plot(x,y,alpha= 0.1) 下图说明了在alpha为0.9、0.5和0.1时透明度的情况。 ?...plt.ylim(-1.0,1.0)#for y axis plt.xlim(0,50)#for x axis 问:如何将刻度更改为对数刻度?

    10.7K31

    python绘图与数据可视化(二)

    同时 Matplotlib 也支持以脚本的形式嵌入 IPython shell、Jupyter 笔记本、web 应用服务器中使用。...rect 是位置参数,接受一个由 4 个元素组成的浮点数列表,形如 [left, bottom, width, height] ,它表示添加到画布中的矩形区域的左下角坐标(x, y),以及宽度和高度。...比如,[ 0.1, 0.1, 0.8, 0.8],它代表着从画布 10% 的位置开始绘制, 宽高是画布的 80% legend()绘制图例 axes 类的 legend() 方法负责绘制画布中的图例,它需要三个参数...subplot2grid()函数详解 matplotlib.pyplot 模块提供了 subplot2grid() ,该函数能够在画布的特定位置创建 axes 对象(即绘图区域)。...这一功能的实现得益于 Matplotlib 内置的刻度定位器和格式化器(两个内建类)。

    16010

    matplotlib基础绘图命令之imshow

    matplotlib中,imshow方法用于绘制热图,基本用法如下 import matplotlib.pyplot as plt import numpy as np np.random.seed(...imshow方法首先将二维数组的值标准化为01之间的值,然后根据指定的渐变色依次赋予每个单元格对应的颜色,就形成了热图。...对于热图而言,通常我们还需要画出对应的图例图例通过colorbar方法来实现,代码如下 plt.imshow(data) plt.colorbar() 输出结果如下 ?...4. origin orign参数指定绘制热图时的方向,默认值为upper, 此时热图的右上角为(0, 0), 当设置为lower时,热图的左下角为(0,0), 用法如下 plt.imshow(data...相比R语言中的热图,matplotlib中的热图没有聚类树的功能,需要自己手动来实现,但是可以很方便的添加图例,而且受益于matplotlib灵活的基础功能,可以实现非常复杂的如图。

    5.1K20

    【7】python_matplotlib 输出(保存)矢量图方法;画图时图例说明(legend)放到图像外侧;Python_matplotlib图例放在外侧保存时显示不完整问题解决

    2.Python_matplotlib画图时图例说明(legend)放到图像外侧  用python的matplotlib画图时,往往需要加图例说明。...如何将该legend移到图像外侧,有多种方法,这里介绍一种。...画图时图例说明(legend)放到图像外侧_Poul_henry的博客-CSDN博客_python画图legend显示在左上角  3.Python_matplotlib图例放在外侧保存时显示不完整问题解决...改变bbox的大小,使其完全包含该图像,尤其是往往落入bbox外侧的图例 (将bbox扩大完全包含图像)。  ...:Python_matplotlib图例放在外侧保存时显示不完整问题解决_Poul_henry的博客-CSDN博客_bbox_inches

    3.8K20

    matplotlib绘图基础

    在机器学习中,通常会涉及大量的数据。如果直接观看这些原始数据,很难从中看出有用的信息。人类是非常视觉的生物,当我们看到可视化的东西时,会更好地理解事物。...你也可以将图例(legend)和颜色条(color bar)添加到图中。 在图上,你可以添加坐标轴(Axes)。...如果你要绘一个特别的坐标轴,还有坐标轴标签、标题和图例,以及坐标轴比例和网格线要考虑。 子图 这个是matplotlib中最不容易理解的。首先是我们为什么需要它?...代码中ax2使用了可选参数,含义是图形坐标系中的[left,bottom,width,height],范围从图左下角的0图右上角的1。...不过如果把基础的概念弄清楚以后,具体某个函数调用,查在线手册就可以了。

    1.2K31

    Python+matplotlib数据可视化设置图例3个精选案例

    扩展库matplotlib.pyplot的函数legend()用于设置当前子图的图例样式和在当前子图中显示图例(要求绘制的曲线、散点、柱等图形已设置label属性),如果有多个子图的话可以使用gca()...lower right'、'right'、'center left'、'center right'、'lower center'、'upper center'、'center',这些字符串依次等价于010...该参数的值也可以是包含2个实数的元组,例如(0.8, 0.3)表示图例左下角在子图中的位置 bbox_to_anchor 用来指定图例在bbox_transform坐标系中的位置,通常为包含2个实数的元组...markerfirst 用来指定是否图例符号在图例文本前面的布尔值,等于True时表示图例符号在前,等于False时表示图例文本在前 fancybox 用来指定图例是否使用圆角矩形边缘的布尔值 shadow...用来指定图例是否显示阴影的布尔值 framealpha 用来指定图例背景透明度的实数 facecolor 用来指定图例的背景颜色 edgecolor 用来指定图例的边框颜色 mode 如果设置为"expand

    3.4K10

    基于geopandas的空间数据分析—geoplot篇(下)

    legend_values:list型,用于自定义图例显示的各个具体数值 legend_labels:list型,用于自定义图例显示的各个具体数值对应的文字标签,与legend_values搭配使用...legend_kwargs:字典,在legend参数设置为True时来传入更多微调图例属性的参数 extent:元组型,用于传入左下角和右上角经纬度信息来设置地图空间范围,格式为(min_longitude...legend_values:list型,用于自定义图例显示的各个具体数值 legend_labels:list型,用于自定义图例显示的各个具体数值对应的文字标签,与legend_values搭配使用...legend_kwargs:字典,在legend参数设置为True时来传入更多微调图例属性的参数 extent:元组型,用于传入左下角和右上角经纬度信息来设置地图空间范围,格式为(min_longitude...度之间,纬度在-9090度之间。

    1.6K50

    (数据科学学习手札83)基于geopandas的空间数据分析——geoplot篇(下)

    legend_values:list型,用于自定义图例显示的各个具体数值 legend_labels:list型,用于自定义图例显示的各个具体数值对应的文字标签,与legend_values搭配使用...legend_kwargs:字典,在legend参数设置为True时来传入更多微调图例属性的参数 extent:元组型,用于传入左下角和右上角经纬度信息来设置地图空间范围,格式为(min_longitude...legend_values:list型,用于自定义图例显示的各个具体数值 legend_labels:list型,用于自定义图例显示的各个具体数值对应的文字标签,与legend_values搭配使用...legend_kwargs:字典,在legend参数设置为True时来传入更多微调图例属性的参数 extent:元组型,用于传入左下角和右上角经纬度信息来设置地图空间范围,格式为(min_longitude...度之间,纬度在-9090度之间。

    1.8K30
    领券