如何修改joypy绘制的joyplot峰峦图的y轴标签颜色
解决方法
你的推测完全正确,joyplot会为每个密度子图生成独立的y轴,plt.tick_params默认仅作用于当前激活的最后一个子图,因此无法全局生效。你只需要遍历joyplot返回的所有子图坐标轴对象,逐个设置y轴参数即可。
完整可运行代码
import joypy import pandas as pd import numpy as np import matplotlib.pyplot as plt ## DATA url = "https://archive.ics.uci.edu/ml/machine-learning-databases/iris/iris.data" new_names = ['SepalLength','SepalWidth','PetalLength','PetalWidth','Name'] iris = pd.read_csv(url, names=new_names, skiprows=0, delimiter=',') ## PLOT fig, axes = joypy.joyplot(iris) ## X AXIS (全局x轴只需要设置一次) plt.tick_params(axis='x', colors='red') ## Y AXIS 遍历所有子图设置y轴刻度颜色 for ax in axes: ax.tick_params(axis='y', colors='red') plt.show()
可选扩展操作
如果需要单独自定义每个y轴标签的内容、字体等属性,可以用如下方式实现:
for idx, ax in enumerate(axes): # 示例中new_names的顺序和子图顺序一一对应,可根据需求调整 ax.set_yticklabels([new_names[idx]], color='red', fontsize=12)
内容的提问来源于stack exchange,提问作者stallingOne
相关产品推荐
相关产品推荐

