如何在 Matplotlib 中设置散点图的标记大小
Matplotlib 中散点图中标记的大小由函数 scatter()
的 s
关键字参数控制,其中 s
是标量或数组。
函数 scatter()
的 s
关键字参数
scatter
函数的语法:
matplotlib.pyplot.scatter(x, y,
s=None,
c='b',
marker='o',
cmap=None,
norm=None,
vmin=None,
vmax=None,
alpha=None,
linewidths=None,
faceted=True,
verts=None,
hold=None,
**kwargs)
其中,s
是标量或长度与 x
和 y
相同的数组,用于设置 markersize
。默认标记大小为 rcParams['lines.markersize'] ** 2
。根据文档,s
是标记大小的平方。
为所有点设置相同的标记大小
import numpy as np
import matplotlib.pyplot as plt
x = [1,2,3,4,5]
y=np.sin(x)
plt.scatter(x,y,s=500,c='magenta')
plt.title('Scatter plot of sinx')
plt.xlabel('x')
plt.ylabel('sinx')
plt.xlim(0,6)
plt.ylim(-2,2)
plt.show()
不一致地增加点的标记大小
为了使标记的宽度(或高度)加倍,我们需要将 s
增加 4 倍,因为 A = W*H => (2W)*(2H)= 4A
。
import matplotlib.pyplot as plt
x = [1,2,3,4,5]
y = [a**2 for a in x]
s = [10*4**n for n in range(len(x))]
plt.scatter(x,y,s=s)
plt.title('Doubling width of marker in scatter plot')
plt.xlabel('x')
plt.ylabel('x**2')
plt.xlim(0,6)
plt.ylim(0,30)
plt.show()
要使标记的面积增加一倍,我们将 area
增加 2 倍,以便标记尺寸随 area
线性缩放。
import matplotlib.pyplot as plt
x = [1,2,3,4,5]
y = [a**2 for a in x]
s = [10*2**n for n in range(len(x))]
plt.scatter(x,y,s=s)
plt.title('Doubling area of marker in scatter plot')
plt.xlabel('x')
plt.ylabel('x**2')
plt.xlim(0,6)
plt.ylim(0,30)
plt.show()
Matplotlib plot
方法中用 markersize
参数以控制大小
import matplotlib.pyplot as plt
x = [1,2,3,4,5]
y = [0]*len(x)
plt.plot(x,y, 'bo', markersize=10)
plt.show()
在这里,圆的面积由 markersize
参数控制。
相关文章
Pandas DataFrame DataFrame.shift() 函数
发布时间:2024/04/24 浏览次数:133 分类:Python
-
DataFrame.shift() 函数是将 DataFrame 的索引按指定的周期数进行移位。
Python pandas.pivot_table() 函数
发布时间:2024/04/24 浏览次数:82 分类:Python
-
Python Pandas pivot_table()函数通过对数据进行汇总,避免了数据的重复。
Pandas read_csv()函数
发布时间:2024/04/24 浏览次数:254 分类:Python
-
Pandas read_csv()函数将指定的逗号分隔值(csv)文件读取到 DataFrame 中。
Pandas 多列合并
发布时间:2024/04/24 浏览次数:628 分类:Python
-
本教程介绍了如何在 Pandas 中使用 DataFrame.merge()方法合并两个 DataFrames。
Pandas loc vs iloc
发布时间:2024/04/24 浏览次数:837 分类:Python
-
本教程介绍了如何使用 Python 中的 loc 和 iloc 从 Pandas DataFrame 中过滤数据。
在 Python 中将 Pandas 系列的日期时间转换为字符串
发布时间:2024/04/24 浏览次数:894 分类:Python
-
了解如何在 Python 中将 Pandas 系列日期时间转换为字符串