pyecharts x轴字体大小调整_pyecharts 柱状图基础篇#学习笔记#
2020年初,很久沒有用過pyecharts的我由于工作原因,安裝了新版pyecharts之后,以前的pyecharts代碼報錯了。搜索之后才發現,我安裝的是不兼容舊版本的新版。
空閑的時間,把新版echart當作新的模塊梳理了一下,整理為便于理解的形式。
參考網址:A Python Echarts Plotting Library
這里描述了設置柱狀圖6大元素、柱狀圖轉置XY軸、堆疊柱狀圖的方法。
了解清楚了柱狀圖,其他圖形應該就無師自通啦,框架結構都是一樣的,參數不同而已,看一下文檔就行啦~
一、設置柱狀圖6大元素的方式
6大元素為:標題、圖例、X軸、Y軸、Y軸區域分隔線、數據標簽
首先導入需要的模塊
from由于新版參數設置均已經選項配置化,需要配置的選項都放在了配置項(options)里面,因此需要導入options及使用到的圖表。
然后,以下是基礎代碼框架
bar1=(Bar() ##定義為柱狀圖.add_xaxis([1,2,3]) ##X軸的值.add_yaxis('y值',[4,5,6],其他參數) ##y的值和y的一些數據配置項.set_global_opts(這里面配置一些 全局參數).set_series_opts(這里面配一些 系列參數) )bar1.render('bar1.html') ###輸出html文件新版pyecharts可以采用以上的鏈式調用方式,也可以采用bar1.add_xaxis()分開調用的方式。為了代碼清晰并且看上去高大上一點(哈哈~~),建議采用鏈式調用。
這6大元素參數在代碼中,分別進行配置的地方如下:
標題、圖例、X軸、Y軸、Y軸區域分隔線為全局參數 ,在set_global_opts后面設置。
數據標簽為系列參數,在set_series_opts后面設置。
具體的簡單示例為:
1.設置標題
格式為:.set_global_opts(title_opts=opts.TitleOpts(具體參數))
具體參數細則參考TitleOpts的參數詳情,以下代碼沒有配置完所有參數,網址直達:A Python Echarts Plotting Library
bar1=(Bar( ).add_xaxis(['1月','2月','3月','4月','5月','6月','7月','8月','9月','10月','11月','12月']).add_yaxis('數量'##系列的名稱,[1000,2000,3000,5000,8000,3700,5800,7900,12000,10000,9000,8000] ##系列的數值).set_global_opts(title_opts=opts.TitleOpts(title='我是大標題',subtitle='我是副標題',pos_left='20%' #標題的位置 距離左邊20%距離。,item_gap=10#主副標題之間的距離,title_textstyle_opts=opts.TextStyleOpts(color='red'#,font_size=12,font_weight='bold' ) #大標題文字的格式配置,,subtitle_textstyle_opts=opts.TextStyleOpts(color='blue',font_style='normal'## 可選:'normal','italic','oblique',font_weight='normal' #粗細 'normal','bold','bolder','lighter' ,font_family= 'monospace'# 還可以是 'serif' , 'monospace', 'Arial', 'Courier New', 'Microsoft YaHei', ...,font_size=12,background_color='grey'#文字背景顏色,border_color='black' #文字塊邊框顏色)###小標題文字的格式配置)))bar1.render('bar1.html') ###輸出html文件輸出的格式為:
2.設置圖例
格式為:.set_global_opts(legend_opts=opts.LegendOpts(具體參數))
具體參數細則參考LegendOpts的參數詳情,以下代碼沒有配置完所有參數,網址直達:A Python Echarts Plotting Library
bar1=(Bar( ).add_xaxis(['1月','2月','3月','4月','5月','6月','7月','8月','9月','10月','11月','12月']).add_yaxis('數量'##系列的名稱,[1000,2000,3000,5000,8000,3700,5800,7900,12000,10000,9000,8000] ##系列的數值).set_global_opts(legend_opts=opts.LegendOpts(type_=None # 'plain':普通圖例。缺省就是普通圖例。 # 'scroll':可滾動翻頁的圖例。當圖例數量較多時可以使用。 ,pos_left='right' #圖例橫向的位置,right表示在右側,也可以為百分比,pos_top='middle'#圖例縱向的位置,middle表示中間,也可以為百分比,orient='vertical'#horizontal #圖例方式的方式)))bar1.render('bar1.html') ###輸出html文件輸出的格式為:
3.X軸設置
格式為:.set_global_opts(xaxis_opts=opts.AxisOpts(具體參數))
具體參數細則參考AxisOpts的參數詳情,以下代碼沒有配置完所有參數,網址直達:
A Python Echarts Plotting Library
bar1=(Bar( ).add_xaxis(['1月','2月','3月','4月','5月','6月','7月','8月','9月','10月','11月','12月']).add_yaxis('數量'##系列的名稱,[1000,2000,3000,5000,8000,3700,5800,7900,12000,10000,9000,8000] ##系列的數值).set_global_opts(xaxis_opts=opts.AxisOpts(name='X軸名稱',name_location='middle' #坐標軸名字所在的位置,name_gap=25#坐標軸名字與坐標軸之間的距離,name_rotate=15 #坐標軸名字旋轉角度,offset=5 #坐標軸X的值距離X軸的距離,name_textstyle_opts=opts.TextStyleOpts(color='black',font_style='italic'## 可選:'normal','italic','oblique',font_weight='bolder' #粗細 'normal','bold','bolder','lighter' ,font_family= 'monospace'# 還可以是 'serif' , 'monospace', 'Arial', 'Courier New', 'Microsoft YaHei', ...,font_size=14,background_color='grey'#文字背景顏色,border_color='black' #文字塊邊框顏色)##X軸名稱的格式配置,axistick_opts=opts.AxisTickOpts(is_inside=True #刻度線是否在內側) #坐標軸刻度配置項,axisline_opts=opts.AxisLineOpts(linestyle_opts=opts.LineStyleOpts(width=3 ##設置寬度,opacity=0 #設置透明度,type_='dashed' # 'solid', 'dashed', 'dotted',color='black') )#坐標軸線的配置項,axislabel_opts=opts.LabelOpts(font_size=13#字的大小,rotate=15 #字旋轉的角度)##坐標軸標簽的格式配置)))bar1.render('bar1.html') ###輸出html文件輸出格式為:
4.Y軸、Y軸分割線的設置
y軸配置和X軸的類似。
格式為:.set_global_opts(yaxis_opts=opts.AxisOpts(具體參數))
bar1=(Bar( ).add_xaxis(['1月','2月','3月','4月','5月','6月','7月','8月','9月','10月','11月','12月']).add_yaxis('數量'##系列的名稱,[1000,2000,3000,5000,8000,3700,5800,7900,12000,10000,9000,8000] ##系列的數值).set_global_opts(yaxis_opts=opts.AxisOpts(name='Y軸名稱',name_location='middle' #坐標軸名字所在的位置,name_gap=25#坐標軸名字與坐標軸之間的距離,name_rotate=60 #坐標軸名字旋轉角度,name_textstyle_opts=opts.TextStyleOpts(color='black',font_style='italic'## 可選:'normal','italic','oblique',font_weight='bolder' #粗細 'normal','bold','bolder','lighter' ,font_family= 'monospace'# 還可以是 'serif' , 'monospace', 'Arial', 'Courier New', 'Microsoft YaHei', ...,font_size=14,background_color='grey'#文字背景顏色,border_color='black' #文字塊邊框顏色),offset=5 #y軸相對于默認位置偏移的距離,相同位置有多個y軸時可以用到,split_number=5 #坐標軸分割的段數,默認為5,只是預估,不是實際展示的段數,min_=0 #最小時候,max_=20000 #最大值,splitline_opts=opts.SplitLineOpts(is_show=True # 是否展示Y軸分割線,linestyle_opts=opts.LineStyleOpts(width=1 ##設置寬度,opacity=0.5 #設置透明度,type_='dotted' # 'solid', 'dashed', 'dotted',color='grey' ) )# y軸分割線顯示的相關設置,X軸和y軸都有, axisline_opts=opts.AxisLineOpts(linestyle_opts=opts.LineStyleOpts(width=3 ##設置寬度# ,opacity=0 #設置透明度,type_='dashed' # 'solid', 'dashed', 'dotted',color='red' ) )###坐標軸線的配置項# ,splitarea_opts ##分割區域配置項)) )bar1.render('bar1.html') ###輸出html文件輸出格式為:
5.數據標簽
格式為:.set_series_opts(label_opts=opts.LabelOpts(具體參數))
具體參數細則參考LabelOpts的參數詳情,以下代碼沒有配置完所有參數,網址直達:A Python Echarts Plotting Library
bar1=(Bar( ).add_xaxis(['1月','2月','3月','4月','5月','6月','7月','8月','9月','10月','11月','12月']).add_yaxis('數量'##系列的名稱,[1000,2000,3000,5000,8000,3700,5800,7900,12000,10000,9000,8000] ##系列的數值).set_series_opts(label_opts=opts.LabelOpts(position='insideTop' #設置數據標簽所在的位置 'top','left','right','bottom','inside','insideLeft','insideRight'# 'insideTop','insideBottom', 'insideTopLeft','insideBottomLeft'# 'insideTopRight','insideBottomRight',color='white'#數據標簽的顏色,font_size=12 # ,formatter #數據標簽顯示格式)##設置數據標簽的格式s) )bar1.render('bar1.html') ###輸出html文件輸出格式為:
opts.LabelOpts()在代碼中都有重復出現,這個配置項可以使用來設置標簽格式的,包括X軸的標簽、Y軸的標簽、數據標簽。配置邏輯有差異,如下:
x和y軸配置標簽的邏輯為:設置全局配置項→設置x軸/y軸的配置項→設置軸標簽的配置項→使用opts.LabelOpts()進行配置。
數據標簽配置標簽的邏輯為:設置系列配置項→設置標簽配置項→使用opts.LabelOpts()進行配置
總結:將以上的代碼匯總在一起,得到以下的圖形:
代碼奉上:
bar1=(Bar( ).add_xaxis(['1月','2月','3月','4月','5月','6月','7月','8月','9月','10月','11月','12月']).add_yaxis('數量'##系列的名稱,[1000,2000,3000,5000,8000,3700,5800,7900,12000,10000,9000,8000] ##系列的數值).set_global_opts(title_opts=opts.TitleOpts(title='我是大標題',subtitle='我是副標題',pos_left='45%' #標題的位置 距離左邊20%距離。,item_gap=15#主副標題之間的距離,title_textstyle_opts=opts.TextStyleOpts(color='red',font_size=17,font_weight='bold' ) #大標題的格式配置,,subtitle_textstyle_opts=opts.TextStyleOpts(color='blue',font_style='normal'## 可選:'normal','italic','oblique',font_weight='normal' #粗細 'normal','bold','bolder','lighter' ,font_family= 'monospace'# 還可以是 'serif' , 'monospace', 'Arial', 'Courier New', 'Microsoft YaHei', ...,font_size=12,background_color='grey'#文字背景顏色,border_color='black' #文字塊邊框顏色)),legend_opts=opts.LegendOpts(type_=None # 'plain':普通圖例。缺省就是普通圖例。 # 'scroll':可滾動翻頁的圖例。當圖例數量較多時可以使用。 ,pos_left='right' #圖例橫向的位置,pos_top='middle'#圖例縱向的位置,orient='vertical'#horizontal #圖例方式的方式), xaxis_opts=opts.AxisOpts(name='X軸名稱',name_location='middle' #坐標軸名字所在的位置,name_gap=25#坐標軸名字與坐標軸之間的距離,name_rotate=15 #坐標軸名字旋轉角度,offset=5 #坐標軸X的值距離X軸的距離,name_textstyle_opts=opts.TextStyleOpts(color='black',font_style='italic'## 可選:'normal','italic','oblique',font_weight='bolder' #粗細 'normal','bold','bolder','lighter' ,font_family= 'monospace'# 還可以是 'serif' , 'monospace', 'Arial', 'Courier New', 'Microsoft YaHei', ...,font_size=14,background_color='grey'#文字背景顏色,border_color='black' #文字塊邊框顏色),axistick_opts=opts.AxisTickOpts(is_inside=True #刻度線是否在內側) #坐標軸刻度配置項,axisline_opts=opts.AxisLineOpts(linestyle_opts=opts.LineStyleOpts(width=3 ##設置寬度#,opacity=0 #設置透明度,type_='dashed' # 'solid', 'dashed', 'dotted',color='black' ) )###坐標軸線的配置項,axislabel_opts=opts.LabelOpts(font_size=13,rotate=15)##坐標軸標簽的配置項),yaxis_opts=opts.AxisOpts(name='Y軸名稱',name_location='middle' #坐標軸名字所在的位置,name_gap=25#坐標軸名字與坐標軸之間的距離,name_rotate=60 #坐標軸名字旋轉角度,name_textstyle_opts=opts.TextStyleOpts(color='black',font_style='italic'## 可選:'normal','italic','oblique',font_weight='bolder' #粗細 'normal','bold','bolder','lighter' ,font_family= 'monospace'# 還可以是 'serif' , 'monospace', 'Arial', 'Courier New', 'Microsoft YaHei', ...,font_size=14,background_color='grey'#文字背景顏色,border_color='black' #文字塊邊框顏色),offset=5 #y軸相對于默認位置偏移的距離,相同位置有多個y軸時可以用到,split_number=5 #坐標軸分割的段數,默認為5,只是預估,不是實際展示的段數,min_=0 #最小時候,max_=20000 #最大值,splitline_opts=opts.SplitLineOpts(is_show=True # 是否展示Y軸分割線,linestyle_opts=opts.LineStyleOpts(width=1 ##設置寬度,opacity=0.5 #設置透明度,type_='dotted' # 'solid', 'dashed', 'dotted',color='grey' ) )# y軸分割線顯示的相關設置,X軸和y軸都有, axisline_opts=opts.AxisLineOpts(linestyle_opts=opts.LineStyleOpts(width=3 ##設置寬度# ,opacity=0 #設置透明度,type_='dashed' # 'solid', 'dashed', 'dotted',color='red' ) )###坐標軸線的配置項# ,splitarea_opts ##分割區域配置項)).set_series_opts(label_opts=opts.LabelOpts(position='insideTop' #設置數據標簽所在的位置 'top','left','right','bottom','inside','insideLeft','insideRight'# 'insideTop','insideBottom', 'insideTopLeft','insideBottomLeft'# 'insideTopRight','insideBottomRight',color='white'#數據標簽的顏色,font_size=12 # ,formatter #數據標簽顯示格式)##設置數據標簽的格式s))bar1.render('bar1.html') ###輸出html文件二、轉置XY軸
調用方式很簡單,為: .reversal_axis()
bar1=(Bar( ).add_xaxis(['1月','2月','3月','4月','5月','6月','7月','8月','9月','10月','11月','12月']).add_yaxis('數量'##系列的名稱,[1000,2000,3000,5000,8000,3700,5800,7900,12000,10000,9000,8000] ##系列的數值).set_series_opts(label_opts=opts.LabelOpts(position='right' #設置數據標簽所在的位置'top','left','right','bottom','inside','insideLeft','insideRight'# 'insideTop','insideBottom', 'insideTopLeft','insideBottomLeft'# 'insideTopRight','insideBottomRight',font_size=12 # ,formatter #數據標簽顯示格式)##設置數據標簽的格式s).reversal_axis())bar1.render('bar1.html') ###輸出html文件輸出格式為:
三、堆疊柱狀圖
格式為:.add_yaxis(具體參數),具體參數中,stack參數設置一個字符串。多個.add_yaxis()時,stack的值為一樣的y值就會疊加在一起。
代碼示例如下:兩個.add_yaxis()的stack值都為“stack1”,所以就堆疊在一起了。
bar1=(Bar( ).add_xaxis(['1月','2月','3月','4月','5月','6月','7月','8月','9月','10月','11月','12月']).add_yaxis('甲的數量'##系列的名稱,[1000,2000,3000,5000,8000,3700,5800,7900,12000,10000,9000,8000] ##系列的數值,stack='stack1').add_yaxis('已的數量'##系列的名稱,[500,1000,588,5788,6000,5677,3467,4444,3333,6666,7777,8888] ##系列的數值,stack='stack1').set_global_opts(title_opts=opts.TitleOpts(title='堆疊的柱狀圖',pos_left='45%'),legend_opts=opts.LegendOpts(type_=None # 'plain':普通圖例。缺省就是普通圖例。 # 'scroll':可滾動翻頁的圖例。當圖例數量較多時可以使用。 ,pos_left='right' #圖例橫向的位置,pos_top='middle'#圖例縱向的位置,orient='vertical'#horizontal #圖例方式的方式)).set_series_opts(label_opts=opts.LabelOpts(is_show=False ##不顯示數據標簽)) )bar1.render('bar1.html') ###輸出html文件輸出格式為:
總結
以上是生活随笔為你收集整理的pyecharts x轴字体大小调整_pyecharts 柱状图基础篇#学习笔记#的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: php 序列化 java_PHP--序列
- 下一篇: 使用 做签名的post_基础实操|使用j