![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
matplotlib
Mr.Jcak
这个作者很懒,什么都没留下…
展开
-
matplotlib显示中文字体
font = {'family' : 'SimHei', 'weight' : 'bold', 'size' : '22'}plt.rc('font', **font)plt.rc('axes', unicode_minus=False)fig, ax = plt.subplots(1, 2, figsize=(18, 6))ax = ax.flatten()ax[0].bar(x, post1, width=0.45, alpha=0.8)ax[0].set_ylim.原创 2022-04-14 11:24:34 · 831 阅读 · 0 评论 -
matplotlib显示特殊符号(gamma,alpha,beta)
plt.title(r'$\gamma$')plt.title(r'$\alpha$')plt.title(r'$\beta$')原创 2021-03-28 15:54:43 · 4504 阅读 · 0 评论 -
matplotlib给坐标轴特定的位置加上文字
比如我想在横坐标0和1这两个位置分别用文字“y1”和“y2”代替,即实现以下这种效果:plt.xlim([-1, 2])plt.xticks([0, 1], ["y1", "y2"])原创 2021-03-28 10:28:29 · 3647 阅读 · 0 评论 -
matplotlib设置多个图例横向水平放置
一般多个图例都是竖向放置如果想要多个图例横向放置,设置plt.legend的ncol参数,ncol参数表示将图例分为多少列,以两个图例横向放置为例:plt.legend(ncol=2)原创 2021-03-24 17:39:41 · 22130 阅读 · 1 评论 -
matplotlib画图设置线条透明度
plt.plot(x, y, alpha=0.5)alpha这个参数用于设置透明度,0~1之间alpha越小,线条越透明原创 2021-03-24 17:35:52 · 21085 阅读 · 0 评论 -
matplotlib调整图例的位置
plt.legend(loc='xx')其中loc的可选项有以下几种 upper right upper left lower left lower right right center left center right lower center upper center原创 2021-03-24 13:17:40 · 1408 阅读 · 0 评论 -
python画一条水平直线(matplotlib)
matplotlib.pyplot.axhlinehttps://matplotlib.org/stable/api/_as_gen/matplotlib.pyplot.axhline.html用法:plt.axhline(0.06, color='r', linestyle='--', label='xxx')plt.legend(loc='upper left')原创 2021-03-24 13:13:21 · 5571 阅读 · 3 评论 -
python在图中画一条垂直线(matplotlib)
matplotlib.pyplot.axvlinehttps://matplotlib.org/stable/api/_as_gen/matplotlib.pyplot.axvline.html?highlight=axvline#matplotlib.pyplot.axvline用法:plt.axvline(x, color='r', linestyle='--', label='xxx')plt.legend()原创 2021-03-24 13:10:10 · 7415 阅读 · 0 评论 -
matplotlib设置colorbar字体大小
只需在前面加一句plt.rcParams['font.size'] = 13原创 2020-12-06 09:20:54 · 5168 阅读 · 1 评论 -
matplotlib的colorbar设置显示的刻度个数和指定的刻度值
通过matplotlib.ticker.MaxNLocator(nbins=n)来设置colorbar上的刻度值个数import matplotlib.ticker as tickerfig = plt.figure()ax = fig.gca()im = ax.imshow(np.random.random([10, 10]))cb1 = plt.colorbar(im, fraction=0.03, pad=0.05)tick_locator = ticker.MaxNLocator(.原创 2020-11-04 20:59:48 · 34857 阅读 · 2 评论 -
matplotlib的colorbar自定义刻度范围
如以下程序将color的范围从0-1变为0-10import matplotlib.ticker as tickerdef fmt1(x,pos): # 设置colorbar的刻度值 return int(x*10)fig = plt.figure()ax = fig.gca()im = ax.imshow(np.random.random([10, 10]))plt.colorbar(im, fraction=0.03, pad=0.05, format=ticker..原创 2020-11-04 19:57:25 · 10734 阅读 · 0 评论 -
matplotlib旋转y轴标题为垂直方向
设置 rotation参数可以随意调节y轴标题方向, rotation默认为90°,如果想将y轴标题调为垂直方向,则设为0°ax[0].set_ylabel('A', fontdict={'size': 16}, rotation=0)但这样也会带来一些问题,比如旋转后的标题不是位于上下方向的居中位置,可以调节y的值设置标题的上下位置ax[0].set_ylabel('A', fontdict={'size': 16}, rotation=0, x=-0.1, y=0.35)还会出现一个原创 2020-10-28 16:10:09 · 8949 阅读 · 1 评论 -
matplotlib调节colorbar的大小
调节plt.colorbar的fraction系数即可调节colorbar的大小weight = np.random.random([8, 8])plt.imshow(weight)plt.colorbar(fraction=0.05, pad=0.05)plt.savefig('tjn.png', bbox_inches='tight')plt.show()原创 2020-10-24 16:59:50 · 18757 阅读 · 3 评论 -
matplotlib为多个子图设置同一个colorbar
fig, ax = plt.subplots(3, 3)ax = ax.flatten()np.random.seed(0)for i in range(9): weight = np.random.random([8, 8]) im = ax[i].imshow(weight)fig.colorbar(im, ax=[ax[0], ax[1], ax[2], ax[3], ax[4], ax[5], ax[6], ax[7], ax[8]], fraction=0.03, p.原创 2020-10-24 16:55:06 · 6543 阅读 · 0 评论 -
python的matplotlib生成colorbar
当有些画图的库不能生成colorbar时,需要手动生成colorbar:plt.colorbar(h),h为图的句柄举个例子,mne.viz.plot_topomap函数不支持显示colorbar,因此需要通过matplotlib库来先设置colorbar再显示im, cn = mne.viz.plot_topomap(w, pos, vmin=-5, vmax=5, show=False)plt.colorbar(im)plt.show()...原创 2020-10-24 12:18:09 · 1889 阅读 · 0 评论 -
python 绘制时频图 plt.specgram
时频图以横轴为时间,纵轴为频率,用颜色表示幅值。在一幅图中表示信号的频率、幅度随时间的变化matplotlib.pyplot.specgram(x, NFFT=None, Fs=None, Fc=None, detrend=None, window=None, noverlap=None, cmap=None, xextent=None, pad_to=None, sides=None, scale_by_freq=None, mode=None, scale=None, vmin=None, .原创 2020-08-04 11:22:57 · 19304 阅读 · 11 评论 -
python根据矩阵数值大小涂上不同深浅颜色
绘制矩阵颜色图import matplotlib.pyplot as pltplt.matshow(np.random.rand(5,5), cmap=plt.get_cmap('Greens'), alpha=0.5) # , alpha=0.3plt.show()原创 2020-08-03 20:27:41 · 11050 阅读 · 1 评论 -
matplotlib使用GridSpec自定义子图位置 (非对称的子图)
上图的结构可以用一下两种方式画:import matplotlib.pyplot as pltfrom matplotlib.gridspec import GridSpecfig = plt.figure(1)gs = GridSpec(3, 3)ax1 = plt.subplot(gs[0, :])ax2 = plt.subplot(gs[1, :2])ax3 = p...转载 2020-03-15 11:03:28 · 1037 阅读 · 0 评论 -
plt.errorbar画误差曲线
plt.errorbar(x, y, yerr=None, xerr=None, fmt='', ecolor=None, elinewidth=None, capsize=None, capthick=None )功能:画误差曲线,也可以用于画置信区间/标准差/方差 参数:x:横坐标的值,y:纵坐标的值,yerr:y值的误差范围,xerr:x值的误差范围 fmt:数据点的标记样式以及相互...原创 2020-03-14 22:16:08 · 8539 阅读 · 0 评论 -
plt.fill_between用法
plt.fill_between用颜色填充两条曲线之间的区域plt.fill_between(x, y1, y2),其中x是横坐标,y1和y2是两条曲线,这个函数的作用是用颜色填充y1和y2这两条曲线之间的区域。该函数最常用的用法是已知均值曲线和标准差,画出标准差覆盖的区域,例如下面这个例子:已知在一个回归问题中,输入向量是x,通过多次试验得到了输出的均值和标准差分别为y_mean...原创 2020-02-25 20:34:07 · 15926 阅读 · 0 评论 -
python matplotlib画图设置坐标轴刻度的字体大小
import matplotlib.pyplot as pltplt.xticks([0, 100, 200, 300, 400, 500, 600, 700]) plt.tick_params(labelsize=13) #刻度字体大小13原创 2019-04-03 10:32:31 · 53830 阅读 · 0 评论 -
python matplotlib画图是设置线宽
在画图时设置linewidth属性import matplotlib.pyplot as pltplt.plot(x, y, linewidth=1)原创 2019-04-03 09:54:22 · 49906 阅读 · 0 评论 -
如何修改matplotlib的图例的标题的字体大小
在plt.legend()里添加fontsize参数可以改变图例的字体大小,但是不能改变图例的标题的字体大小,在前面加一句:matplotlib.rcParams.update({'font.size': 13})即可同时改变图例的标题字体大小...原创 2019-03-18 13:49:50 · 14848 阅读 · 2 评论 -
python将图例画在图外
plt.legend(labels=['label1','label2'], bbox_to_anchor=(1, 1))原创 2019-03-18 10:16:30 · 5038 阅读 · 0 评论 -
python保存的图片不完整
当图例在图外时,用plt.savefig保存的图片图例只保存了一半,在plt.savefig中加入“ bbox_inches = 'tight'”参数即可plt.savefig('path', bbox_inches = 'tight')原创 2019-03-18 10:14:05 · 15699 阅读 · 0 评论 -
使用matplotlib画图时不能同时打开太多张图
使用matplotlib画图时有时会收到来自matplotlib的runtime warming的警告,原因可能是同时打开太多张图,最常见的情况是在一个循环中画图,每次循环都新建一个图,但是未关闭新建的图,当循环次数多了之后内存就吃不消了。有两种解决方法,一是只建一个图,每次循环结束后通过plt.cla()清除图的内容,下次循环可以使用同一张图作画,例子如下:import osimpo...原创 2018-12-05 21:59:47 · 3890 阅读 · 0 评论 -
mnist多个数字显示在一张图片并保存图片
import osimport scipyimport numpy as npimport matplotlib.pyplot as pltimport tensorflow as tfdata_path = r"D:\PycharmProjects\dataset"def load_mnist(is_training=True): path = os.path.join...原创 2018-12-05 00:02:21 · 1179 阅读 · 1 评论 -
python matplotlib画图改变图标题和坐标轴标题的字体大小
import matplotlib.pyplot as pltplt.title('Input',fontdict={'weight':'normal','size': 20}) #改变图标题字体plt.xlabel('Time', fontdict={'weight': 'normal', 'size': 13})#改变坐标轴标题字体...原创 2019-04-03 10:38:23 · 32645 阅读 · 2 评论 -
matlab画图设置
设置坐标轴显示范围:xlim([0,150])设置坐标轴显示的刻度:set(gca, 'XTicklabel',[0,50,100,150] ); 不显示坐标轴刻度:set(gca, 'YTicklabel',[] ); 设置坐标轴标题及旋转角度:ylabel('yl','Rotation',0)设置字体大小set(gca,'fontsize',6,'...原创 2019-04-14 13:15:29 · 2599 阅读 · 0 评论 -
MATLAB获得子图位置
a1=subplot(9,11,1)get(a1,'position') %[0.1300 0.8577 0.0547 0.0673]%前面两个数值分别代表子图离左边框和下边框的距离,后面两个数值是子图的长和宽原创 2019-04-14 11:20:04 · 2442 阅读 · 0 评论 -
python为字体添加上下标
添加上标:^添加下标:_举例:import numpy as npimport matplotlib.pyplot as pltt = np.linspace(0, 10, 1000)y = np.sin(t)plt.plot(t, y)plt.xlabel('a/${m_2}$',fontdict={'weight': 'normal', 'size': 15})pl...原创 2019-04-19 09:13:49 · 65175 阅读 · 17 评论 -
python图片显示中文
首先下载simhei字体(SimHei.ttf)https://www.fontpalace.com/font-details/SimHei/找到matplotlib包所在文件夹import matplotlibmatplotlib.matplotlib_fname()/home/***/site-packages/matplotlib/mpl-data/matplotlibr...原创 2019-05-06 16:39:41 · 906 阅读 · 0 评论 -
python给多个子图加总标题
在画完所有的子图后,加一句plt.suptitle('Title')原创 2019-07-07 23:51:56 · 27600 阅读 · 6 评论 -
python画图去掉边框
ax=plt.subplot(2,3,1)...ax.spines['top'].set_visible(False)ax.spines['right'].set_visible(False)ax.spines['bottom'].set_visible(False)ax.spines['left'].set_visible(False)原创 2019-07-06 20:20:46 · 17631 阅读 · 2 评论 -
python用Matplotlib画箭头
plt.annotate('text',xy=(tx0,ty0),xytext=(tx1,ty1),arrowprops=dict(arrowstyle="->",connectionstyle="arc3"))其中,text是在箭头末尾显示的文字,xy是箭头终点坐标,xytext是起点坐标,arrowtypes指定箭头的样式...原创 2019-07-06 22:01:31 · 14431 阅读 · 1 评论 -
python画图删除上边框和右边框
import seaborn as sns...sns.despine();#在画完图之后插入这一句原创 2019-07-20 16:54:01 · 8446 阅读 · 4 评论 -
Python绘制决策树的节点
import matplotlib.pyplot as pltdecisionNode = dict(boxstyle="sawtooth", fc="0.8") # 决策节点的属性。boxstyle为文本框的类型,sawtooth是锯齿形,fc是边框线粗细# 可以写为decisionNode={boxstyle:'sawtooth',fc:'0.8'}leafNode = dict(b...原创 2018-11-15 10:24:40 · 1818 阅读 · 0 评论