matplotlib命令与格式:图例legend语法及设置
来源:互联网 发布:json数据格式 编辑:程序博客网 时间:2024/05/05 02:43
1.图例legend基础语法及用法
legend语法参数如下: matplotlib.pyplot.legend(*args, **kwargs)
Keyword
Description
loc
Location code string, or tuple (see below).图例所有figure位置
prop
the font property字体参数
fontsize
the font size (used only if prop is not specified)
markerscale
the relative size of legend markers vs. original
图例标记与原始标记的相对大小
markerfirst
If True (default), marker is to left of the label.
如果为True,则图例标记位于图例标签的左侧
numpoints
the number of points in the legend for line
为线条图图例条目创建的标记点数
scatterpoints
the number of points in the legend for scatter plot
为散点图图例条目创建的标记点数
scatteryoffsets
a list of yoffsets for scatter symbols in legend
为散点图图例条目创建的标记的垂直偏移量
frameon
If True, draw the legend on a patch (frame).
控制是否应在图例周围绘制框架
fancybox
If True, draw the frame with a round fancybox.
控制是否应在构成图例背景的FancyBboxPatch周围启用圆边
shadow
If True, draw a shadow behind legend.
控制是否在图例后面画一个阴影
framealpha
Transparency of the frame.
控制图例框架的 Alpha 透明度
edgecolor
Frame edgecolor.
facecolor
Frame facecolor.
ncol
number of columns 设置图例分为n列展示
borderpad
the fractional whitespace inside the legend border
图例边框的内边距
labelspacing
the vertical space between the legend entries
图例条目之间的垂直间距
handlelength
the length of the legend handles
图例句柄的长度
handleheight
the height of the legend handles
图例句柄的高度
handletextpad
the pad between the legend handle and text
图例句柄和文本之间的间距
borderaxespad
the pad between the axes and legend border
轴与图例边框之间的距离
columnspacing
the spacing between columns 列间距
title
the legend title
bbox_to_anchor
the bbox that the legend will be anchored.指定图例在轴的位置
bbox_transform
the transform for the bbox. transAxes if None.
(1)设置图例位置
使用loc参数
plt.legend(loc='lower left')
0: ‘best'
1: ‘upper right'
2: ‘upper left'
3: ‘lower left'
4: ‘lower right'
5: ‘right'
6: ‘center left'
7: ‘center right'
8: ‘lower center'
9: ‘upper center'
10: ‘center'
(2)设置图例字体
#设置字体大小
fontsize : int or float or {‘xx-small’, ‘x-small’, ‘small’, ‘medium’, ‘large’, ‘x-large’, ‘xx-large’}
(3)设置图例边框及背景
plt.legend(loc='best',frameon=False) #去掉图例边框
plt.legend(loc='best',edgecolor='blue') #设置图例边框颜色
plt.legend(loc='best',facecolor='blue') #设置图例背景颜色,若无边框,参数无效
(4)设置图例标题
plt.legend(loc='best',title='figure 1 legend') #去掉图例边框
2.legend面向对象命令
(1)获取并设置legend图例
plt.legend(loc=0, numpoints=1)
leg = plt.gca().get_legend() #或leg=ax.get_legend()
ltext = leg.get_texts()
plt.setp(ltext, fontsize=12,fontweight='bold')
(2)设置图例
legend = ax.legend((rectsTest1, rectsTest2, rectsTest3), ('test1', 'test2', 'test3'))
legend = ax.legend(loc='upper center', shadow=True, fontsize='x-large')
legend.get_frame().set_facecolor('red') #设置图例legend背景为红色
frame = legend.get_frame()
frame.set_alpha(1)
frame.set_facecolor('none') #设置图例legend背景透明
(3)移除图例
ax1.legend_.remove() ##移除子图ax1中的图例
ax2.legend_.remove() ##移除子图ax2中的图例
ax3.legend_.remove() ##移除子图ax3中的图例
plt.legend(loc=0, numpoints=1)
leg = plt.gca().get_legend() #或leg=ax.get_legend()
ltext = leg.get_texts()
plt.setp(ltext, fontsize=12,fontweight='bold')
(2)设置图例
legend = ax.legend((rectsTest1, rectsTest2, rectsTest3), ('test1', 'test2', 'test3'))
legend = ax.legend(loc='upper center', shadow=True, fontsize='x-large')
legend.get_frame().set_facecolor('red') #设置图例legend背景为红色
frame = legend.get_frame()
frame.set_alpha(1)
frame.set_facecolor('none') #设置图例legend背景透明
(3)移除图例
ax1.legend_.remove() ##移除子图ax1中的图例
ax2.legend_.remove() ##移除子图ax2中的图例
ax3.legend_.remove() ##移除子图ax3中的图例
3.案例:设置图例legend到图形边界外
#主要是bbox_to_anchor的使用box = ax1.get_position()ax1.set_position([box.x0, box.y0, box.width , box.height* 0.8])ax1.legend(loc='center', bbox_to_anchor=(0.5, 1.2),ncol=3)
4.案例:显示多图例legend
import matplotlib.pyplot as pltimport numpy as npx = np.random.uniform(-1, 1, 4)y = np.random.uniform(-1, 1, 4)p1, = plt.plot([1,2,3])p2, = plt.plot([3,2,1])l1 = plt.legend([p2, p1], ["line 2", "line 1"], loc='upper left')p3 = plt.scatter(x[0:2], y[0:2], marker = 'D', color='r')p4 = plt.scatter(x[2:], y[2:], marker = 'D', color='g')# This removes l1 from the axes.plt.legend([p3, p4], ['label', 'label1'], loc='lower right', scatterpoints=1)# Add l1 as a separate artist to the axesplt.gca().add_artist(l1)
import matplotlib.pyplot as pltline1, = plt.plot([1,2,3], label="Line 1", linestyle='--')line2, = plt.plot([3,2,1], label="Line 2", linewidth=4)# 为第一个线条创建图例first_legend = plt.legend(handles=[line1], loc=1)# 手动将图例添加到当前轴域ax = plt.gca().add_artist(first_legend)# 为第二个线条创建另一个图例plt.legend(handles=[line2], loc=4)plt.show()
阅读全文
0 0
- matplotlib命令与格式:图例legend语法及设置
- matplotlib的基本用法(四)——设置legend图例
- ggplot2-设置图例(legend)
- Matplotlib设置图例字体大小
- matplotlib命令与格式:设置折线与点属性
- matplotlib命令与格式:tick_params参数刻度线样式设置
- matplotlib命令与格式:tick坐标轴主副刻度设置
- legend图例
- matplotlib命令与格式:tick坐标轴日期格式(设置日期主副刻度)
- echarts的legend图例的显示与隐藏(legend图例进入页面显示的个数)
- matplotlib--Legend
- matplotlib-legend()
- matplotlib(legend)
- Matplotlib--legend
- matplotlib: legend()
- matplotlib模块数据可视化-设置图例
- matplotlib命令与格式:设置栅格,axes脊柱(坐标轴),背景颜色
- Python 添加图例出错:UserWarning: Legend does not support [<matplotlib.lines.Line2D object at 0x07FA3210>]
- 前端框架技术--jQuery基础应用
- HDU 4911 Inversion【归并排序||线段树】
- 僵死进程
- java网络编程之Netty实战数据通信(七)
- 对vector/string执行insert/erase操作后迭代器的情况说明
- matplotlib命令与格式:图例legend语法及设置
- c语言中部分字符串操作函数
- Mybatis Collection查询集合只出现一条数据
- 基于FullCalendar插件的简单个人日程安排系统(1)
- ZigZag Conversion
- 欢迎使用CSDN-markdown编辑器
- javaScript中的if(变量)和if(变量== true)的区别
- PL/SQL学习笔记
- 提升Xcode编译性能--RAM磁盘编译,编译速速飞起来