report-generator

安装量: 37
排名: #18854

安装

npx skills add https://github.com/claude-office-skills/skills --skill report-generator

Report Generator Skill Overview This skill enables automatic generation of professional data reports. Create dashboards, KPI summaries, and analytical reports with charts, tables, and insights from your data. How to Use Provide data (CSV, Excel, JSON, or describe it) Specify the type of report needed I'll generate a formatted report with visualizations Example prompts: "Generate a sales report from this data" "Create a monthly KPI dashboard" "Build an executive summary with charts" "Produce a data analysis report" Domain Knowledge Report Components

Report structure

report

{ 'title' : 'Monthly Sales Report' , 'period' : 'January 2024' , 'sections' : [ 'executive_summary' , 'kpi_dashboard' , 'detailed_analysis' , 'charts' , 'recommendations' ] } Using Python for Reports import pandas as pd import matplotlib . pyplot as plt from reportlab . lib . pagesizes import letter from reportlab . pdfgen import canvas def generate_report ( data , output_path ) :

Load data

df

pd . read_csv ( data )

Calculate KPIs

total_revenue

df [ 'revenue' ] . sum ( ) avg_order = df [ 'revenue' ] . mean ( ) growth = df [ 'revenue' ] . pct_change ( ) . mean ( )

Create charts

fig , axes = plt . subplots ( 2 , 2 , figsize = ( 12 , 10 ) ) df . plot ( kind = 'bar' , ax = axes [ 0 , 0 ] , title = 'Revenue by Month' ) df . plot ( kind = 'line' , ax = axes [ 0 , 1 ] , title = 'Trend' ) plt . savefig ( 'charts.png' )

Generate PDF

... PDF generation code

return output_path HTML Report Template def generate_html_report ( data , title ) : html = f'''

{ title }

{ title }

$ { data [ 'revenue' ] : ,.0f }
Total Revenue
{ data [ 'growth' ] : .1% }
Growth Rate

''' return html Example: Sales Report import pandas as pd import matplotlib . pyplot as plt def create_sales_report ( csv_path , output_path ) :

Read data

df

pd . read_csv ( csv_path )

Calculate metrics

metrics

{ 'total_revenue' : df [ 'amount' ] . sum ( ) , 'total_orders' : len ( df ) , 'avg_order' : df [ 'amount' ] . mean ( ) , 'top_product' : df . groupby ( 'product' ) [ 'amount' ] . sum ( ) . idxmax ( ) }

Create visualizations

fig , axes = plt . subplots ( 2 , 2 , figsize = ( 14 , 10 ) )

Revenue by product

df . groupby ( 'product' ) [ 'amount' ] . sum ( ) . plot ( kind = 'bar' , ax = axes [ 0 , 0 ] , title = 'Revenue by Product' )

Monthly trend

df . groupby ( 'month' ) [ 'amount' ] . sum ( ) . plot ( kind = 'line' , ax = axes [ 0 , 1 ] , title = 'Monthly Revenue' ) plt . tight_layout ( ) plt . savefig ( output_path . replace ( '.html' , '_charts.png' ) )

Generate HTML report

html

generate_html_report ( metrics , 'Sales Report' ) with open ( output_path , 'w' ) as f : f . write ( html ) return output_path create_sales_report ( 'sales_data.csv' , 'sales_report.html' ) Resources Matplotlib Plotly ReportLab

返回排行榜