Powershell 图表
Powershell charting
我正在尝试根据每个版本为 SQL 个实例创建一个饼图。例如,2012 - 3 个实例、2008 - 2 个实例、2005 - 1 个实例。任何人都可以帮助我如何在饼图中实现这一点。
代码如下:
Add-Type -AssemblyName "System.Windows.Forms.DataVisualization"
$scriptpath = Split-Path -parent $MyInvocation.MyCommand.Definition
#frame
$MemoryUsageChart2 = New-object System.Windows.Forms.DataVisualization.Charting.Chart
$MemoryUsageChart2.Width = 500
$MemoryUsageChart2.Height = 400
$MemoryUsageChart2.BackColor = [System.Drawing.Color]::White
#header
[void]$MemoryUsageChart2.Titles.Add("No.SQL Instances")
$MemoryUsageChart2.Titles[0].Font = "segoeuilight,20pt"
$MemoryUsageChart2.Titles[0].Alignment = "Bottomright"
$chartarea = New-Object System.Windows.Forms.DataVisualization.Charting.ChartArea
$chartarea.Name = "ChartArea1"
$MemoryUsageChart2.ChartAreas.Add($chartarea)
[void]$MemoryUsageChart2.Series.Add("data2")
$MemoryUsageChart2.Series["data2"].ChartType = [System.Windows.Forms.DataVisualization.Charting.SeriesChartType]::Pie
$SQL= @{SQLA=2012; SQLB=2012; SQLC=2008; SQLD=2005;SQLE=2005 ;SQLF=2000}
我已经使用下面的代码设法解决了它,我们必须对散列 table 进行分组并获取每个实例的计数并将其加载到 X 轴和 Y 轴以获取饼图:
$MemoryUsageChart2.Series["data2"][“PieLabelStyle”] = “Outside”
$MemoryUsageChart2.Series["data2"][“PieLineColor”] = “Black”
$MemoryUsageChart2.Series["data2"][“PieDrawingStyle”] = "Concave”
$ht = $SQL.Values | group
$x = $ht | select -ExpandProperty Name
$y = $ht | select -ExpandProperty Count
$i = 0
$x | Foreach-object {$MemoryUsageChart2.Series["data2"].Points.AddXY("$($_ +(-$y[$i]))", $y[$i]); $i++ }
$MemoryUsageChart2.SaveImage("C:\Virtual_Memory_Usage.png","png")
我正在尝试根据每个版本为 SQL 个实例创建一个饼图。例如,2012 - 3 个实例、2008 - 2 个实例、2005 - 1 个实例。任何人都可以帮助我如何在饼图中实现这一点。
代码如下:
Add-Type -AssemblyName "System.Windows.Forms.DataVisualization"
$scriptpath = Split-Path -parent $MyInvocation.MyCommand.Definition
#frame
$MemoryUsageChart2 = New-object System.Windows.Forms.DataVisualization.Charting.Chart
$MemoryUsageChart2.Width = 500
$MemoryUsageChart2.Height = 400
$MemoryUsageChart2.BackColor = [System.Drawing.Color]::White
#header
[void]$MemoryUsageChart2.Titles.Add("No.SQL Instances")
$MemoryUsageChart2.Titles[0].Font = "segoeuilight,20pt"
$MemoryUsageChart2.Titles[0].Alignment = "Bottomright"
$chartarea = New-Object System.Windows.Forms.DataVisualization.Charting.ChartArea
$chartarea.Name = "ChartArea1"
$MemoryUsageChart2.ChartAreas.Add($chartarea)
[void]$MemoryUsageChart2.Series.Add("data2")
$MemoryUsageChart2.Series["data2"].ChartType = [System.Windows.Forms.DataVisualization.Charting.SeriesChartType]::Pie
$SQL= @{SQLA=2012; SQLB=2012; SQLC=2008; SQLD=2005;SQLE=2005 ;SQLF=2000}
我已经使用下面的代码设法解决了它,我们必须对散列 table 进行分组并获取每个实例的计数并将其加载到 X 轴和 Y 轴以获取饼图:
$MemoryUsageChart2.Series["data2"][“PieLabelStyle”] = “Outside”
$MemoryUsageChart2.Series["data2"][“PieLineColor”] = “Black”
$MemoryUsageChart2.Series["data2"][“PieDrawingStyle”] = "Concave”
$ht = $SQL.Values | group
$x = $ht | select -ExpandProperty Name
$y = $ht | select -ExpandProperty Count
$i = 0
$x | Foreach-object {$MemoryUsageChart2.Series["data2"].Points.AddXY("$($_ +(-$y[$i]))", $y[$i]); $i++ }
$MemoryUsageChart2.SaveImage("C:\Virtual_Memory_Usage.png","png")