2016-04-04 6 views
0

Get-CorpChart-FullEditionスクリプトでチャートを作成しようとしていますが、これはチャート作成で非常に優れています。チャートの作成でハッシュを発行する問題

ウェブサイトで私は以下の指示を見つけました。

だから今、あなたは何をすべきか、すべては-Dataパラメータとして関数に$Cities配列を与え、そして「CITY_NAME」として-Obj_Keyパラメータを供給するものであり、かつ-Obj_Value

「City_Population」として

私はこのようなハッシュを作成しました:$active_inactive

$active_inactive = @{} 
$red = 15 
$orange = 25 
$active_inactive['active']= $red 
$active_inactive['inactive'] = $orange 

. "D:\Auto\Get-Corpchart-LightEdition.ps1" -data $active_inactive -obj_key "Name" -obj_value "Value" -filepath "c:\chart1.png" -type pie 

データ:

Name       Value 
----       ----- 
inactive      7 
active       3

問題chart1.pngファイルが空になっています。私のハッシュテーブルに問題があるようです。

上記のようにハッシュテーブルを正しく作成しているかどうかは誰にでも分かりますか?

+0

これを行うと動作しますか?-data $ active_inactive.GetEnumerator() ' – Matt

答えて

1

あなたが効果的に個別のオブジェクトとしてパイプライン全体にハッシュテーブル内の各エントリを送信.GetEnumarator()方法

を呼び出す場合、私はあなたができると思うハッシュテーブルを使用したい場合。パラメータが[array]ではなくハッシュテーブルを期待しているスクリプトの光版のためのコードを見てみると

. "D:\Auto\Get-Corpchart-LightEdition.ps1" -data $active_inactive.GetEnumerator() -obj_key "Name" -obj_value "Value" -filepath "c:\chart1.png" -type pie 

日付がどのくらい複雑になるかによって、ハッシュテーブルの データから独自のカスタムオブジェクトを作成する方がよいでしょう。

[pscustomobject]@{ 
    State="Active" 
    Value=15 
},[pscustomobject]@{ 
    State="Inactive" 
    Value=25 
} 

これをより効果的に行うための方法のトンは、上の例にすぎません。

+0

答えをありがとう。 – Ironic

+0

active = 15、inactive = 20の配列を作成しようとしていますが、動作していません。あなたはもう少し説明できますか? – Ironic

2

-dataには、ハッシュテーブルではなくオブジェクトの配列が必要です。

関連する問題