In a simple lineplot from Seaborn sample data, adding a "size" argument to control linewidth automatically adds an artist/handle to the legend generated from the "label" argument.
import seaborn as sns
from matplotlib import pyplot as plt
df = sns.load_dataset('geyser')
fig, ax = plt.subplots()
sns.lineplot(
x=df.waiting,
y=df.duration,
label='Label',
size=3,
ax=ax
)
plt.show()
What is the reason for this behavior, and what can be done to prevent it?
Use the linewidth
parameter to set the width of the line. The size parameter does something else. Check out the examples in the docs to see how to use it. The image below gives a good impression, and also makes it clear why the parameter results in a legend entry.
The size is used to group, and will have different size lines based on a category.
For example you can have different size based on the kind
column:
import seaborn as sns
from matplotlib import pyplot as plt
df = sns.load_dataset('geyser')
fig, ax = plt.subplots()
sns.lineplot(
x=df.waiting,
y=df.duration,
label='Label',
size = df['kind'],
ax=ax
)
plt.show()
Not sure what it's doing as a number though. You use linewidth
to set the line size though:
import seaborn as sns
from matplotlib import pyplot as plt
df = sns.load_dataset('geyser')
fig, ax = plt.subplots()
sns.lineplot(
x=df.waiting,
y=df.duration,
label='Label',
linewidth = 3,
ax=ax
)
plt.show()
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.