112 lines
		
	
	
		
			3.5 KiB
		
	
	
	
		
			HTML
		
	
	
	
		
		
			
		
	
	
			112 lines
		
	
	
		
			3.5 KiB
		
	
	
	
		
			HTML
		
	
	
	
|  | <!DOCTYPE html> | |||
|  | <html> | |||
|  |   <head> | |||
|  |     <meta http-equiv="content-type" content="text/html;charset=utf-8" /> | |||
|  |     <link rel="shortcut icon" href="#" /> | |||
|  |     <link rel="stylesheet" type="text/css" href="{{pluResPath}}html/ledger/ledger.css" /> | |||
|  |     <link rel="preload" href="https://unpkg.com/@antv/g2plot@latest/dist/g2plot.min.js" as="script" /> | |||
|  |     <link rel="preload" href="{{resPath}}/font/tttgbnumber.ttf" as="font"> | |||
|  |     <link rel="preload" href="{{pluResPath}}img/other/bg.webp" as="image"> | |||
|  |     <link rel="preload" href="{{pluResPath}}img/other/chart.png" as="image"> | |||
|  |   </head> | |||
|  | 
 | |||
|  |   <body> | |||
|  |     <div class="container" id="container"> | |||
|  |       <div class="title-box"> | |||
|  |         <div class="info"> | |||
|  |           <div class="uid">ID:{{uid}}</div> | |||
|  |           <div class="month">{{day}}札记</div> | |||
|  |         </div> | |||
|  |         <img class="genshin_logo" src="{{pluResPath}}img/other/原神.png" /> | |||
|  |       </div> | |||
|  |       <div class="data-box"> | |||
|  |         <div class="month"> | |||
|  |           <div class="head">当月获取:</div> | |||
|  |           <div class="primogems"> | |||
|  |             <div class="icon-ys"></div> | |||
|  |             <div class="text">原石:{{month_data.current_primogems}} | {{month_data.gacha}} 抽</div> | |||
|  |           </div> | |||
|  |           <div class="primogems"> | |||
|  |             <div class="icon-mola"></div> | |||
|  |             <div class="text">摩拉:{{month_data.current_mora}}</div> | |||
|  |           </div> | |||
|  |         </div> | |||
|  |         <div class="day"> | |||
|  |           <div class="head">上月获取:</div> | |||
|  |           <div class="primogems"> | |||
|  |             <div class="icon-ys"></div> | |||
|  |             <div class="text">原石:{{month_data.last_primogems}} | {{month_data.last_gacha}} 抽</div> | |||
|  |           </div> | |||
|  |           <div class="primogems"> | |||
|  |             <div class="icon-mola"></div> | |||
|  |             <div class="text">摩拉:{{month_data.last_mora}}</div> | |||
|  |           </div> | |||
|  |         </div> | |||
|  |       </div> | |||
|  |       <div class="chart-box"> | |||
|  |         <div class="head">原石收入组成:</div> | |||
|  |         <div class="chart-info"> | |||
|  |           <div id="chartContainer"></div> | |||
|  |           <ul class="tooltip"> | |||
|  |             {{each month_data.group_by val}} | |||
|  |             <li> | |||
|  |               <i style="background: {{val.color}}"></i> | |||
|  |               <span class="action">{{val.action}}</span> <em>{{val.percent}}%</em><span class="num">{{val.num}}</span> | |||
|  |             </li> | |||
|  |             {{/each}} | |||
|  |           </ul> | |||
|  |         </div> | |||
|  |       </div> | |||
|  |     </div> | |||
|  |   </body> | |||
|  | 
 | |||
|  |   <script type="text/javascript" src="https://unpkg.com/@antv/g2plot@latest/dist/g2plot.min.js"></script> | |||
|  |   <script> | |||
|  |     const { Pie } = G2Plot; | |||
|  |     const data = JSON.parse(`{{@ group_by}}`); | |||
|  |     const piePlot = new Pie("chartContainer", { | |||
|  |       renderer: "svg", | |||
|  |       animation: false, | |||
|  |       data: data, | |||
|  |       appendPadding: 10, | |||
|  |       angleField: "num", | |||
|  |       colorField: "action", | |||
|  |       radius: 1, | |||
|  |       innerRadius: 0.7, | |||
|  |       color: JSON.parse(`{{@ color}}`), | |||
|  |       meta: { | |||
|  |         // num: { | |||
|  |         //   formatter: (v) => `${v}`, | |||
|  |         // }, | |||
|  |       }, | |||
|  |       label: { | |||
|  |         type: "inner", | |||
|  |         offset: "-50%", | |||
|  |         autoRotate: false, | |||
|  |         style: { | |||
|  |           textAlign: "center", | |||
|  |           fontFamily: "tttgbnumber", | |||
|  |         }, | |||
|  |         formatter: ({ percent }) => { | |||
|  |           percent = (percent * 100).toFixed(0); | |||
|  |           return percent > 2 ? `${percent}%` : ""; | |||
|  |         }, | |||
|  |       }, | |||
|  |       statistic: { | |||
|  |         title: { | |||
|  |           offsetY: -18, | |||
|  |           content: "总计", | |||
|  |         }, | |||
|  |         content: { | |||
|  |           offsetY: -10, | |||
|  |           style: { | |||
|  |             fontFamily: "tttgbnumber", | |||
|  |           }, | |||
|  |         }, | |||
|  |       }, | |||
|  |       legend:false, | |||
|  |     }); | |||
|  |     piePlot.render(); | |||
|  |   </script> | |||
|  | </html> |