在 Pandas 中的指定列上进行渐变颜色映射
让我们看看如何在 Pandas DataFrame 的特定列上渐变颜色映射。我们可以使用 Styler 类的Styler.background_gradient()函数来做到这一点。
Syntax : Styler.background_gradient(cmap=’PuBu’, low=0, high=0, axis=0, subset=None)
Parameters :
cmap : str or colormap (matplotlib colormap)
low, high : float (compress the range by these values.)
axis : int or str (1 or ‘columns’ for columnwise, 0 or ‘index’ for rowwise)
subset : IndexSlice (a valid slice for data to limit the style application to)
Returns : self
方法 :
- 导入 Pandas 模块
- 创建数据框
- 使用 style.background_gradient()函数明智地选择特定列
- 显示数据框
让我们通过例子来理解:
示例 1:
创建一个 DataFrame 并对所有列进行渐变。
Python3
# importing pandas module
import pandas as pd
# Creating pandas DataFrame
df = pd.DataFrame({"A": [1, 2, -3, 4, -5, 6],
"B": [3, -5, -6, 7, 3, -2],
"C": [-4, 5, 6, -7, 5, 4],
"D": [34, 5, 32, -3, -56, -54]})
# Displaying the original DataFrame
print("Original Array : ")
print(df)
# background color mapping
print("\nDataframe - Gradient color:")
df.style.background_gradient()
Python3
# importing pandas module
import pandas as pd
# Creating pandas DataFrame
df = pd.DataFrame({"A": [1, 2, -3, 4, -5, 6],
"B": [3, -5, -6, 7, 3, -2],
"C": [-4, 5, 6, -7, 5, 4],
"D": [34, 5, 32, -3, -56, -54]})
# Displaying the original DataFrame
print("Original Array : ")
print(df)
# background color mapping
print("\nDataframe - Gradient color:")
# df.style.background_gradient()
df.style.background_gradient(subset='B')
Python3
df.style.background_gradient(subset='D')
输出 :
示例 2:
创建一个 DataFrame 并对特定列进行渐变
Python3
# importing pandas module
import pandas as pd
# Creating pandas DataFrame
df = pd.DataFrame({"A": [1, 2, -3, 4, -5, 6],
"B": [3, -5, -6, 7, 3, -2],
"C": [-4, 5, 6, -7, 5, 4],
"D": [34, 5, 32, -3, -56, -54]})
# Displaying the original DataFrame
print("Original Array : ")
print(df)
# background color mapping
print("\nDataframe - Gradient color:")
# df.style.background_gradient()
df.style.background_gradient(subset='B')
输出 :
如果要更改另一列,则
Python3
df.style.background_gradient(subset='D')
输出 :
,