swustxxl 2020-07-26 15:41 采纳率: 0%
浏览 707

python 双轴子图 x轴 坐标轴标签不能显示

如题,画双轴子图不能显示 x-轴坐标轴标签,似乎 “双轴”与“子图”存在冲突有关,当前版本是 anaconda 3.7.4。

  • 问题展示
import pandas as pd
import matplotlib.pyplot as plt

a = pd.date_range('2020-07-01','2020-07-20')
b = [2,3,4,5,7,9,20,20,11,13,1,2,3,9,23,2,6,7,7,7]
c = [0.20,0.1,0.13,0.1,0.2,0.3,0.9,0.23,0.2,0.6,0.7,0.7,0.7,0.2,0.3,0.4,0.5,0.7,0.9,0.2]

data = pd.DataFrame({'a':a,'b':b,'c':c})

data = data.groupby(['a'])['b','c'].sum()

nrow = 2
ncol = 1

fig = plt.figure(figsize=(ncol*10,nrow*4))

ax_1 = plt.subplot2grid((nrow, ncol), (0, 0), colspan=1, rowspan=1,facecolor = 'black')
ax_2 = plt.subplot2grid((nrow, ncol), (1, 0), colspan=1, rowspan=1,facecolor = 'black')

data['b'].plot(ax = ax_1,color = 'r')
data['c'].plot(ax = ax_1.twinx(),color = 'y')

图片说明

  • 只画双轴,正常显示坐标
import pandas as pd
import matplotlib.pyplot as plt

a = pd.date_range('2020-07-01','2020-07-20')
b = [2,3,4,5,7,9,20,20,11,13,1,2,3,9,23,2,6,7,7,7]
c = [0.20,0.1,0.13,0.1,0.2,0.3,0.9,0.23,0.2,0.6,0.7,0.7,0.7,0.2,0.3,0.4,0.5,0.7,0.9,0.2]

data = pd.DataFrame({'a':a,'b':b,'c':c})

data = data.groupby(['a'])['b','c'].sum()

nrow = 1
ncol = 1

fig = plt.figure(figsize=(ncol*10,nrow*4))

ax_1 = plt.subplot2grid((nrow, ncol), (0, 0), colspan=1, rowspan=1,facecolor = 'black')
# ax_2 = plt.subplot2grid((nrow, ncol), (1, 0), colspan=1, rowspan=1,facecolor = 'black')

data['b'].plot(ax = ax_1,color = 'r')
data['c'].plot(ax = ax_1.twinx(),color = 'y')

图片说明

  • 只画子图,正常显示
import pandas as pd
import matplotlib.pyplot as plt

a = pd.date_range('2020-07-01','2020-07-20')
b = [2,3,4,5,7,9,20,20,11,13,1,2,3,9,23,2,6,7,7,7]
c = [0.20,0.1,0.13,0.1,0.2,0.3,0.9,0.23,0.2,0.6,0.7,0.7,0.7,0.2,0.3,0.4,0.5,0.7,0.9,0.2]

data = pd.DataFrame({'a':a,'b':b,'c':c})

data = data.groupby(['a'])['b','c'].sum()

nrow = 2
ncol = 1

fig = plt.figure(figsize=(ncol*10,nrow*4))

ax_1 = plt.subplot2grid((nrow, ncol), (0, 0), colspan=1, rowspan=1,facecolor = 'black')
ax_2 = plt.subplot2grid((nrow, ncol), (1, 0), colspan=1, rowspan=1,facecolor = 'black')

data['b'].plot(ax = ax_1,color = 'r')
data['c'].plot(ax = ax_2,color = 'y')

图片说明

  • 写回答

1条回答 默认 最新

  • zqbnqsdsmd 2020-07-31 08:37
    关注
    评论

报告相同问题?

悬赏问题

  • ¥15 划分vlan后不通了
  • ¥15 GDI处理通道视频时总是带有白色锯齿
  • ¥20 用雷电模拟器安装百达屋apk一直闪退
  • ¥15 算能科技20240506咨询(拒绝大模型回答)
  • ¥15 自适应 AR 模型 参数估计Matlab程序
  • ¥100 角动量包络面如何用MATLAB绘制
  • ¥15 merge函数占用内存过大
  • ¥15 Revit2020下载问题
  • ¥15 使用EMD去噪处理RML2016数据集时候的原理
  • ¥15 神经网络预测均方误差很小 但是图像上看着差别太大