ax = subplots(nrows,ncols,sharex,sharey,squeeze,subplot_kw,gridspec_kw,**fig_kw)
创建画布和子图。
nrows和ncols表示将画布分割成几行几列 ,
sharex和sharey表是共用xy轴的设置。
squeeze bool
a.默认参数为True:额外的维度从返回的Axes(轴)对象中挤出,对于N*1或1*N个子图,返回一个1维数组,对于N*M,N>1和M>1返回一个2维数组。
b.为False,不进行挤压 *** 作:返回一个元素为Axes实例的2维数组,即使它最终是1x1。
subplot_kw:字典类型,可选参数。把字典的关键字传递给add_subplot()来创建每个子图。
subplot_kw:字典类型,可选参数。把字典的关键字传递给add_subplot()来创建每个子图。
gridspec_kw:字典类型,可选参数。把字典的关键字传递给GridSpec构造函数创建子图放在网格里(grid)。
**fig_kw:把所有详细的关键字参数传给figure()函数。
可见你没有办法单独设置某个子图的ax的。
1. 前言
当日期数据作为图表的坐标轴时通常需要特殊处理,应为日期字符串比较长,容易产生重叠现象
2. 设定主/次刻度
2.1 引用库
from matplotlib.dates import DateFormatter, WeekdayLocator, DayLocator, MONDAY,YEARLY1
2.2 获取每月/周/日数据
获取每月一日数据
monthdays = MonthLocator()1
获取每周一的日期数据
mondays = WeekdayLocator(MONDAY) # 主要刻度12
获取每日数据
alldays = DayLocator() # 次要刻度12
2.3 设定主/次刻度
ax.xaxis.set_major_locator(mondays)
ax.xaxis.set_minor_locator(alldays)12
2.4 设定格式
mondayFormatter = DateFormatter('%Y-%m-%d') # 如:2-29-2015
dayFormatter = DateFormatter('%d') # 如:12
ax.xaxis.set_major_formatter(mondayFormatter)1234
3. 字符串旋转
for label in ax1.get_xticklabels(): label.set_rotation(30) label.set_horizontalalignment('right')123
4. 效果
最简单的柱状代码应该是这样的# coding: utf-8
import matplotlib.pyplot as plt
import numpy as np
x = np.random.randint(0, 10, size=10)
y = np.random.randint(100, 1000, size=10)
plt.bar(x, y)
plt.show()
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)