我正试图在同一图中绘制两个猫形图。我试图使用subplot()函数,但没有结果。 这是我用于一次绘制一个猫图的代码。
第一个目录
const Telegraf = require('telegraf')
const Composer = require('telegraf/composer')
const session = require('telegraf/session')
const Stage = require('telegraf/stage')
const Markup = require('telegraf/markup')
const WizardScene = require('telegraf/scenes/wizard')
require('dotenv').config()
const Extra = require('telegraf/extra');
const bot = new Telegraf(process.env.BOT_TOKEN)
const inlineMessageRatingKeyboard = Markup.inlineKeyboard([
Markup.callbackButton('Add','add'),
Markup.callbackButton('Append','append')
]).extra()
bot.hears('options', (ctx) => {
return ctx.reply('<b>options</i>', Extra.HTML().markup((m) =>
m.inlineKeyboard([
m.callbackButton('add', 'add'),
m.callbackButton('append', 'append')
])));
});
bot.action('add', (ctx) => { return('test')})
bot.action('append', (ctx) => return('append'))
第二个目录
这是我正在密谋的第二个目录:
fig, axs =plt.subplots(2,1)
sns.catplot(x = 'day',y = 'count',data=day_of_month_count,
kind ='bar',
height = 8 , aspect= 1.5,ax=axs[0])
目标: 以相同的图形(一个接一个)进行绘制
我尝试了类似的操作(带有子图),但是它不起作用。
sns.catplot(x = 'day',y = 'count',data=day_of_month_count,
kind ='bar',
height = 8 , aspect= 1.5,ax=axs[1])
还有其他选择吗?解决方案?
答案 0 :(得分:0)
首先,彼此相邻将需要1行2列。然后,以下方法将按预期正常工作。
在这里,您必须关闭/隐藏catplot
返回的轴。可以使用正确的索引和plt.close
来完成。数字的索引/编号从0开始。这是一个示例答案。
import seaborn as sns
import matplotlib.pyplot as plt
sns.set(style="ticks")
exercise = sns.load_dataset("exercise")
fig, axs = plt.subplots(1,2)
sns.catplot(x="time", y="pulse", kind ='bar', data=exercise, ax=axs[0])
sns.catplot(x="time", y="pulse", kind ='bar', data=exercise, ax=axs[1])
plt.close(2)
plt.close(3)
fig.tight_layout()