matplotlib y轴标注显示不全以及subplot调整的问题
matplotlib y轴标注显示不全以及subplot调整的问题
问题:
我想在y轴显示的标注太长,想把它变成两行显示,发现生成的图形只显示的第二行的字,把第一行的字挤出去了
想要的是显示两行这样子的

现实却是这样子

主要相关的api有:
- plt.subplots_adjust
- set_ylabel
- plt.text
解决思路
- 当出现右边显示不全的时候,第一感觉是:应该可以通过set_ylabel 来设置y轴标注的位置和大小,发现set_ylabel只能设置labelpad ,没有位置的参数;
- 然后找到了可以用text设置标注字体的位置和方向,但是要多次定位,尝试,发现不方便;
- 那么想到的是应该可以设置plot的位置吧,用ax1.plot?找了下,也没看到,不爽;
- 在show的图形界面发现一个移动的按钮

- 移动left亦可以显示出y轴的标注了,那么我应该只需要在程序中设置一下left的参数既可以了吧,在上面matplotlib的example中,找到了我想要的subplots_adjust
- 即有了下面的源代码,满足设置要求。
源代码如下:
import matplotlib.pyplot as plt
import numpy as np
from numpy import abs
size=[5,10,20,30,50,100]
avg=[-0.2896,0.073865632,0.034858287,-0.092241705,-0.022924236,0.016541661]
avr=[0.032,0.077757872,0.090351641,0.036522663,0.034413038,0.096587464]
fig = plt.figure()
ax1 = fig.add_subplot(211)
lns1 = ax1.plot(size, trackPos_avg,color='blue',label='error average',linestyle='-',linewidth=1.9)
ax1.set_ylabel('deviation from\ncentral line ($m$)',fontsize=18, labelpad = 0.5)
plt.xticks(fontsize = 17)#对坐标的值数值,大小限制
plt.yticks(fontsize = 17)
ax2 = fig.add_subplot(212)
ax2.set_ylabel('standard \nvariance ($m^2$)',fontsize=18,labelpad = 12.5)
lns2 = ax2.plot(size, avr, color='red',label='mean square error',linestyle='-',linewidth=1.9)
plt.xticks(fontsize = 17)#对坐标的值数值,大小限制
plt.yticks(fontsize = 17)
ax2.set_xlabel('replay size',fontsize=18)
plt.subplots_adjust(left=0.18, wspace=0.25, hspace=0.25,
bottom=0.13, top=0.91)
\#plt.text(0.4, 0.4, 'deviation from\n central line ($m$)', rotation=90, ha='left')
\#plt.legend(prop={'size':18}) # loc='upper left',
\#fig.savefig('./figure/error_paper.eps', format='eps', dpi=1000)
fig.savefig('./figure/error_paper.png', dpi=1000)
plt.show()
可以下面的yticks,限制横纵坐标的值
plt.xticks(fontsize = 17)#对坐标的值数值,大小限制
plt.yticks([0.01,0.03,0.05,0.07,0.09],fontsize = 17)
matplotlib y轴标注显示不全以及subplot调整的问题的更多相关文章
- echarts Y轴名称显示不全(转载)
转载来源:https://blog.csdn.net/qq8241994/article/details/90720657今天在项目的开发中遇到的一个问题,echarts Y轴左侧的文字太多了,显示不 ...
- [置顶]
echarts x轴文字显示不全(xAxis文字倾斜比较全面的3种做法值得推荐)
echarts x轴标签文字过多导致显示不全 如图: 解决办法1:xAxis.axisLabel 属性 axisLabel的类型是object ,主要作用是:坐标轴刻度标签的相关设置.(当然yAxis ...
- echarts x轴文字显示不全解决办法
标题:echarts x轴文字显示不全(xAxis文字倾斜比较全面的3种做法值得推荐):http://blog.csdn.net/kebi007/article/details/68488694
- echarts x轴文字显示不全(解决方案)
echarts x轴标签文字过多导致显示不全 如图: 解决办法1:xAxis.axisLabel 属性 axisLabel的类型是object ,主要作用是:坐标轴刻度标签的相关设置.(当然yAxis ...
- 百度echarts插件x轴坐标显示不全决解方法
X轴显示不全: xAxis.axisLabel.interval number, Function [ default: 'auto' ] 坐标轴刻度标签的显示间隔,在类目轴中有效. 默认会采用标签不 ...
- fusioncharts Y轴不显示中文的解决方法(转载)
使用fusionChart主要是被其界面吸引了,各类图表都很好看,下载以后文档也很周全,支持的语言也很多种 ,容易上手.fusionChart工作原理主要是通过后台传xml数据源给报表前台flash ...
- EChart 标题 title 样式,x轴、y轴坐标显示,调整图表位置等
示例里工作一般情况是够用了,更复杂的可以查询教程: title 官方解说:http://echarts.baidu.com/option.html#title 坐标相关: X轴:http://echa ...
- TeeChart的X轴为时间,多个Y轴的显示
最后上代码 public partial class Test : Form { private TChart tChart = new TChart(); ; public Test() { Ini ...
- Echarts Y轴min显示奇葩问题(做此记录)
项目需求是根据不同情况显示最大值最小值 有9-35 12-50 9-50 三种情况 前面两种可以显示出来 但是9-50的话 最小值9显示不出来 8,7等就可以显示出来 后面想到强制从最小值 ...
随机推荐
- UVA-10497 Sweet Child Makes Trouble (计数+高精度)
题目大意:这是一道简单排列组合题 .简单说下题意:n件物品,把这n件物品放到不是原来的位置,问所有的方案数.所有的位置都没有变. 题目解析:按照高中的方法,很快得到一个递推公式:f [n]= (n-1 ...
- OPENWRT常用设置
常用设置: 计划任务,定时重启 系统--计划任务,每行一个计划任务. 然后是计划任务列表的格式: [minute] [hour] [day of month] [month] [day of week ...
- Spring MVC和Spring Data JPA之按条件查询和分页(kkpaper分页组件)
推荐视频:尚硅谷Spring Data JPA视频教程,一学就会,百度一下就有, 后台代码:在DAO层继承Spring Data JPA的PagingAndSortingRepository接口实现的 ...
- Syntax error on token(s), misplaced construct(s)
Syntax error on token(s), misplaced construct(s)
- HDTunePro汉化版温度显示不正常后需要更改
查找:2564B046000000002564B043替换:2564A848000000002564A1E6 查找:B0432F2564B046替换:A1E62F2564A848
- pandas 操作 excel
1. 多重 sheet Using Pandas to pd.read_excel() for multiple worksheets of the same workbook pd.read_exc ...
- php变量什么情况下加大括号{}
下面几个比较能说明原因的解释是: 表示{}里面的是一个变量 ,执行时按照变量来处理 在字符串中引用变量使用的特殊包括方式,这样就可以不使用.运算符,从而减少代码的输入量了. 其实输出那块是等同于pr ...
- 转:Oracle日期周详解以及周开始结束时间计算
目录(?)[-] ORACLE中周相关知识描述 日期格式化函数 日期时间运算函数 根据给定时间取一周的开始时间和结束时间 根据给定周数取一周的开始时间和结束时间 获取一年的最大周次 特别应该注意的地方 ...
- bug20170125
1s定时请求接口,接口不响应(接口挂掉),浏览器崩溃
- Linux操作系统网络配置