python画图plot 给多条线添加图例_python – 将图例添加到matplotlib boxplot,在同一轴上有多个图...

这篇博客介绍了如何使用matplotlib库在Python中绘制箱线图,并详细解释了如何通过boxplot函数生成箱线图,设置参数如notch、widths和patch_artist等。此外,还展示了如何从箱线图的各个组件中获取艺术家对象,并利用它们来添加图例,最终实现了一个包含两个数据集的箱线图,并将其图例定位在右上角。
摘要由CSDN通过智能技术生成

boxplot返回艺术家字典

result : dict

A dictionary mapping each component of the boxplot to a list of the matplotlib.lines.Line2D instances created. That dictionary has the following keys (assuming vertical boxplots):

boxes: the main body of the boxplot showing the quartiles and the median’s confidence intervals if enabled.

[…]

使用这些框,您可以将图例艺术家视为

ax.legend([bp1["boxes"][0], bp2["boxes"][0]], ['A', 'B'], loc='upper right')

完整的例子:

import matplotlib.pyplot as plt

import numpy as np; np.random.seed(1)

data1=np.random.randn(40,2)

data2=np.random.randn(30,2)

fig, ax = plt.subplots()

bp1 = ax.boxplot(data1, positions=[1,4], notch=True, widths=0.35,

patch_artist=True, boxprops=dict(facecolor="C0"))

bp2 = ax.boxplot(data2, positions=[2,5], notch=True, widths=0.35,

patch_artist=True, boxprops=dict(facecolor="C2"))

ax.legend([bp1["boxes"][0], bp2["boxes"][0]], ['A', 'B'], loc='upper right')

ax.set_xlim(0,6)

plt.show()

好的,针对您的问题,我可以给您提供一些Python Matplotlib画图中设置字体、字体大小、刻度密度、线条样式等的方法。 1. 设置字体和字体大小: 可以使用`rcParams`来设置全局字体和字体大小,也可以在特定的对象上进行设置。例如: ```python import matplotlib.pyplot as plt plt.rcParams['font.family'] = 'Times New Roman' plt.rcParams['font.size'] = 16 # 或者使用下面的方式进行设置: fig, ax = plt.subplots() ax.set_xlabel('X Label', fontsize=16, fontfamily='Times New Roman') ax.set_ylabel('Y Label', fontsize=16, fontfamily='Times New Roman') ``` 2. 设置刻度密度: `xticks`和`yticks`可以设置刻度的位置,`xticklabels`和`yticklabels`可以设置刻度标签的内容,`tick_params`可以设置刻度的样式,例如: ```python import numpy as np import matplotlib.pyplot as plt x = np.linspace(0, 10, 100) y = np.sin(x) fig, ax = plt.subplots() ax.plot(x, y) ax.set_xticks([0, 2, 4, 6, 8, 10]) ax.set_xticklabels(['0', '2', '4', '6', '8', '10'], fontsize=12) ax.set_yticks([-1, 0, 1]) ax.set_yticklabels(['-1', '0', '1'], fontsize=12) ax.tick_params(axis='both', which='major', length=10, width=2, labelsize=12) ax.tick_params(axis='both', which='minor', length=5, width=1, labelsize=10) ``` 3. 设置线条样式: 可以使用`plot`函数中的`linestyle`参数来设置线条样式,例如: ```python import numpy as np import matplotlib.pyplot as plt x = np.linspace(0, 10, 100) y1 = np.sin(x) y2 = np.cos(x) fig, ax = plt.subplots() ax.plot(x, y1, linestyle='-', linewidth=2, label='sin(x)') ax.plot(x, y2, linestyle='--', linewidth=2, label='cos(x)') ax.legend(loc='upper right', fontsize=12) ``` 以上是一些基本的设置方法,您可以根据具体需求进行调整。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值