Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/298.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 更改matplotlib中寄生轴的颜色_Python_Matplotlib - Fatal编程技术网

Python 更改matplotlib中寄生轴的颜色

Python 更改matplotlib中寄生轴的颜色,python,matplotlib,Python,Matplotlib,我想改变寄生轴的颜色 基本代码来自示例 我只是补充一下 par1.spines['right'].设置颜色(“红色”) 改变颜色(根据)。但它不起作用 完整代码: 从mpl\u toolkits.axes\u grid1导入主机\u子批次 将mpl_toolkits.axisArtister作为AA导入 将matplotlib.pyplot作为plt导入 主机=主机\子地块(111,轴\类=AA.轴) plt.子批次调整(右=0.75) par1=host.twinx() par2=host.

我想改变寄生轴的颜色

基本代码来自示例

我只是补充一下

par1.spines['right'].设置颜色(“红色”)
改变颜色(根据)。但它不起作用

完整代码:

从mpl\u toolkits.axes\u grid1导入主机\u子批次
将mpl_toolkits.axisArtister作为AA导入
将matplotlib.pyplot作为plt导入
主机=主机\子地块(111,轴\类=AA.轴)
plt.子批次调整(右=0.75)
par1=host.twinx()
par2=host.twinx()
偏移量=60
新建固定轴=par2.获取网格辅助对象().新建固定轴
par2.轴[“右”]=新的固定轴(loc=“右”,
轴=par2,
偏移量=(偏移量,0))
par2.轴[“右”]切换(all=True)
host.set_xlim(0,2)
host.set_ylim(0,2)
host.set_xlabel(“距离”)
host.set_ylabel(“密度”)
par1.设置标签(“温度”)
par2.设置标签(“速度”)
p1,=主机图([0,1,2],[0,1,2],label=“Density”)
p2,=par1.绘图([0,1,2],[0,3,2],label=“Temperature”)
p3,=par2.绘图([0,1,2],[50,30,15],label=“Velocity”)
par1.set_ylim(0,4)
par2.set_ylim(1,65)
host.legend()
host.axis[“left”].label.set_color(p1.get_color())
par1.axis[“right”].label.set_color(p2.get_color())
par2.axis[“right”].label.set_color(p3.get_color())
#为什么不起作用?
par1.刺[‘右’]设置颜色(“红色”)
plt.draw()
plt.show()

我使用matplotlib 2.0.0

主机子图
创建与普通轴不同的
mpl\u工具包.axisartist.axis\u artist.axisartist
的实例

因此,您需要像设置标签一样设置轴的属性

host.axis["right"].line.set_color(p2.get_color())
par1.axis["right"].major_ticks.set_color(p2.get_color())
par1.axis["right"].major_ticklabels.set_color(p2.get_color())

par2.axis["right"].line.set_color(p3.get_color())
par2.axis["right"].major_ticks.set_color(p3.get_color())
par2.axis["right"].major_ticklabels.set_color(p3.get_color())