日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > python >内容正文

python

python怎么定义正方形函数_python – Matplotlib自定义图例以显示正方形而不是矩形...

發布時間:2024/7/23 python 47 豆豆
生活随笔 收集整理的這篇文章主要介紹了 python怎么定义正方形函数_python – Matplotlib自定义图例以显示正方形而不是矩形... 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

這是我嘗試將條形圖的圖例從矩形更改為方形:

import matplotlib.patches as patches

rect1 = patches.Rectangle((0,0),1,1,facecolor='#FF605E')

rect2 = patches.Rectangle((0,0),1,1,facecolor='#64B2DF')

plt.legend((rect1, rect2), ('2016', '2015'))

但是當我繪制這個時,我仍然會看到矩形而不是正方形:

有關如何做到這一點的任何建議?

我嘗試了@ImportanceOfBeingErnest和@furas提供的兩種解決方案,結果如下:

@ ImportanceOfBeingErnest的解決方案是最容易做到的:

plt.rcParams['legend.handlelength'] = 1

plt.rcParams['legend.handleheight'] = 1.125

結果如下:

我的最終代碼如下所示:

plt.legend((df.columns[1], df.columns[0]), handlelength=1, handleheight=1) # the df.columns = the legend text

@ furas的解決方案產生了這個,我不知道為什么文本遠離矩形,但我確信差距可以以某種方式改變:

最佳答案:

Matplotlib提供rcParams

legend.handlelength : 2. # the length of the legend lines in fraction of fontsize

legend.handleheight : 0.7 # the height of the legend handle in fraction of fontsize

您可以在通話中將其設置為plt.legend()

plt.legend(handlelength = 1,handleheight = 1)

或者在腳本開頭使用rcParams

import matplotlib

matplotlib.rcParams['legend.handlelength'] = 1

matplotlib.rcParams['legend.handleheight'] = 1

不幸的是,提供相等的句柄長度= 1,handleheight = 1將不會提供完美的矩形.似乎handlelength = 1,handleheight = 1.125將完成這項工作,但這可能取決于所使用的字體.

另一種方法是,如果要使用代理藝術家,可以使用plot / scatter方法中的方形標記.

bar1 = plt.plot([], marker="s", markersize=15, linestyle="", label="2015")

并將其提供給圖例,圖例(手柄= [bar1]).使用此方法需要設置matplotlib.rcParams [‘legend.numpoints’] = 1,否則圖例中將出現兩個標記.

以下是兩種方法的完整示例

import matplotlib.pyplot as plt

plt.rcParams['legend.handlelength'] = 1

plt.rcParams['legend.handleheight'] = 1.125

plt.rcParams['legend.numpoints'] = 1

fig, ax = plt.subplots(ncols=2, figsize=(5,2.5))

# Method 1: Set the handlesizes already in the rcParams

ax[0].set_title("Setting handlesize")

ax[0].bar([0,2], [6,3], width=0.7, color="#a30e73", label="2015", align="center")

ax[0].bar([1,3], [3,2], width=0.7, color="#0943a8", label="2016", align="center" )

ax[0].legend()

# Method 2: use proxy markers. (Needs legend.numpoints to be 1)

ax[1].set_title("Proxy markers")

ax[1].bar([0,2], [6,3], width=0.7, color="#a30e73", align="center" )

ax[1].bar([1,3], [3,2], width=0.7, color="#0943a8", align="center" )

b1, =ax[1].plot([], marker="s", markersize=15, linestyle="", color="#a30e73", label="2015")

b2, =ax[1].plot([], marker="s", markersize=15, linestyle="", color="#0943a8", label="2016")

ax[1].legend(handles=[b1, b2])

[a.set_xticks([0,1,2,3]) for a in ax]

plt.show()

生產

標簽:python,matplotlib

總結

以上是生活随笔為你收集整理的python怎么定义正方形函数_python – Matplotlib自定义图例以显示正方形而不是矩形...的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 色播五月综合 | 少妇无套内谢免费视频 | 亲子乱对白乱都乱了 | 鲁鲁久久 | 在线观看国产 | 久久久久久久久久久久久久免费看 | 亚洲av无码乱码在线观看性色 | 国产伦理自拍 | 欧美日本免费 | 少妇性l交大片免费观看 | 肉丝肉足丝袜一区二区三区 | 少妇av一区二区三区无码 | 亚洲在线一区 | 少妇捆绑紧缚av | 91免费影片 | 国产福利电影在线 | 粉嫩av四季av绯色av | 在线观看无码精品 | 在线播放第一页 | 欧美综合视频在线 | 91免费毛片 | www.午夜av | 91精彩视频| 99视频免费看 | 国产三级在线播放 | 男生女生插插插 | 亚洲日本护士毛茸茸 | 色综合天天| 中文字幕日韩精品在线观看 | 人人射人人插 | 中文字幕+乱码+中文乱码91 | 欧美一区二区三区不卡视频 | 美女黄色真播 | 西西人体www大胆高清 | 欧美激情一区二区三区 | 免费网站看av | 欧美视频免费看欧美视频 | 黑人与日本少妇 | 在线观看黄色动漫 | 黄色av片三级三级三级免费看 | 爱爱网站视频 | 欧美1 | 老师张开让我了一夜av | 熟妇无码乱子成人精品 | 一区二区三区四区欧美 | 国产在线观看免费视频软件 | 国产精品资源在线观看 | 91黄色小视频 | 狗爬女子的视频 | 在线观看国产 | 国产老妇伦国产熟女老妇视频 | 国产激情综合 | 亚洲偷自 | jzz国产| 97国产精品视频人人做人人爱 | av免费黄色| 精品久久久久久久久中文字幕 | 波多野结衣一级 | 亚洲码在线观看 | 免费啪视频在线观看 | 丰满人妻一区二区三区在线 | 亚洲黄网在线 | 欧美69精品久久久久久不卡 | 日韩毛片免费看 | 最近的中文字幕 | 日韩av一区在线播放 | 久久国产精品免费看 | 国产v在线 | 狠狠ri| 欧美自拍视频 | 亚洲黄色精品视频 | 日韩xx视频 | 久久99成人 | 中文字幕www | 99在线视频免费 | 爱色av网站| 91丨九色 | 古代玷污糟蹋np高辣h文 | 国产九九精品视频 | av黄色在线播放 | 狠狠操狠狠| 91av不卡| 亚洲社区在线观看 | 亚洲一级特黄毛片 | 久草新在线 | 午夜国产视频 | 张柏芝亚洲一区二区三区 | 欧美一区二区三区久久综合 | 国产黄色一级 | 成人爽站w47pw | 亚洲视频黄色 | 日韩精品久久久久久 | 东京热无码av一区二区 | 99国产精品久久久 | zoo性欧美| 亚洲伦理久久 | 国产精品美女主播 | 欧美乱码精品一区二区三区 | 波多野结衣中文字幕一区二区 |