当前位置: 首页 > 面试题库 >

使用Twiny时,Python Matplotlib图形标题与轴标签重叠

谷博艺
2023-03-14
问题内容

我正在尝试使用twiny在同一张图上绘制两个单独的数量,如下所示:

fig = figure()
ax = fig.add_subplot(111)
ax.plot(T, r, 'b-', T, R, 'r-', T, r_geo, 'g-')
ax.set_yscale('log')
ax.annotate('Approx. sea level', xy=(Planet.T_day*1.3,(Planet.R)/1000), xytext=(Planet.T_day*1.3, Planet.R/1000))
ax.annotate('Geostat. orbit', xy=(Planet.T_day*1.3, r_geo[0]), xytext=(Planet.T_day*1.3, r_geo[0]))
ax.set_xlabel('Rotational period (hrs)')
ax.set_ylabel('Orbital radius (km), logarithmic')
ax.set_title('Orbital charts for ' + Planet.N, horizontalalignment='center', verticalalignment='top')


ax2 = ax.twiny()
ax2.plot(v,r,'k-')
ax2.set_xlabel('Linear speed (ms-1)')

show()

并且数据显示的很好,但是我遇到的问题是,图形标题与辅助x轴上的轴标签重叠,因此几乎看不清(我想在此处发布图片示例,但我没有足够高的代表)。

我想知道是否有直接将标题直接移动几十个像素的直接方法,以使图表看起来更漂亮。


问题答案:

我不确定在更高版本的matplotlib中它是否是一项新功能,但至少对于1.3.1,这很简单:

plt.title(figure_title, y=1.08)

这也适用于plt.suptitle(),但还不适用于plt.xlabel(),等等。



 类似资料:
  • 用xlabel, ylabel, 及zlabel 命令添加x-,y-,z-等标签。用title 命令在图象顶部加标题,用text 函数在图象中任何部位添加文本。TeX标记的子集则产生希腊字母。可以交互地设置这些选项。详见图形的编辑。 t = -pi:pi/100:pi; y = sin(t); plot(t,y) axis([-pi pi -1 1]) xlabel('-\pi \leq {\it

  • 在使用JFreeChart创建具有相对较大数据集的条形图时,我面临以下问题: 用重叠的X轴标签生成的条形图。我尝试了垂直定位标签,仍然没有帮助。请提供解决此问题的最佳方法。代码剪切如下: 更新:根据@trash天的建议,我使用了从0到列计数的Sliding类别数据集索引。当列计数较大(此处为50)时,X标签重叠。当列计数设置为较低的数字时,它工作正常。我想找到大列大小的解决方案。重要的是,我需要将

  • 我的x轴值没有对齐。我应该修改什么设置? x轴未对齐 下面是我到目前为止在代码中使用的。setLabelsToSkip将无法工作,因为我使用的是3.0.1版。 这是我的标签格式化程序类: 以下是我的主要活动setdata方法: 在我的主要活动中,我像这样使用它:

  • 我正在尝试使用我自己的标签制作Seaborn条形图,代码如下: 但是,我得到一个错误: 有什么好处?

  • 我正在《马特洛特利布》中创建一个人物,如下所示: 我想为图形标题和轴标签指定字体大小。我需要这三个都是不同的字体大小,所以设置全局字体大小()不是我想要的。如何单独设置图形标题和轴标签的字体大小?

  • 我试图用matplotlib在另一个情节上绘制一条水平线。除了标题和轴标签永远不会显示,一切正常。这是怎么运作的? *编辑抱歉,代码看起来有点像这样:从matplotlib导入pyplot作为plt n=100 一切正常显示只是没有标题和轴标签。传说就在那里。