SetProperty[{obj,itemspec},namevalue]
obj 中の itemspec の namevalue を設定する.
SetProperty
SetProperty[{obj,itemspec},namevalue]
obj 中の itemspec の namevalue を設定する.
詳細
- 特性はGraphのようなオブジェクト中の特定の名前付きの項目の name->value のペアを保存し操作するために使われる.
- SetPropertyは,特性値を変更したオブジェクトを与える.
- 項目指定 itemspec は,一般に{collection,index}の形を取る.
- index は,一般に次の形を取る.
-
ind 単一の指標 {ind1,ind2,…} 指標のリスト All collection 中の可能なすべての指標 patt collection 中の patt にマッチする指標 - collection は,一般に次の形を取る.
-
col 単一の集合 {col1,col2,…} 集合のリスト All 可能なすべての集合 patt patt にマッチする集合 - collection の形の項目指定 itemspec は,集合中のすべての指標についてデフォルト値を参照する.
- Graphオブジェクトで使用可能な項目には頂点と辺が含まれる.
例題
すべて開く すべて閉じる例 (2)
g = CompleteGraph[4]{SetProperty[{g, 1}, VertexLabels -> "one"], SetProperty[{g, 12}, EdgeStyle -> Brown]}CompleteGraph[4, VertexSize -> Small]SetProperty[{%, 1}, VertexStyle -> Red]SetProperty[{%, 1}, VertexStyle -> Blue]スコープ (6)
基本的な用法 (2)
SetProperty[{[image], 1}, VertexSize -> Small]SetProperty[{[image], 12}, EdgeLabels -> "hello"]SetProperty[{[image], 1}, {VertexStyle -> Magenta, VertexLabels -> "hello"}]SetProperty[{[image], 12}, {EdgeStyle -> Magenta, EdgeLabels -> "hello"}]頂点の特性 (2)
標準的な頂点特性にはVertexStyleが含まれる:
g = CompleteGraph[4, VertexSize -> Medium]SetProperty[{g, 4}, VertexStyle -> Red]SetProperty[{g, 1}, VertexLabels -> "one"]SetProperty[{g, 1}, VertexSize -> Tiny]SetProperty[{g, 1}, VertexShape -> [image]]SetProperty[{g, 2}, VertexShapeFunction -> "Square"]不可視特性にはVertexWeightが含まれる:
SetProperty[{g, 1}, VertexWeight -> 100]PropertyValue[{%, 1}, VertexWeight]SetProperty[{[image], 2}, "Material" -> "Wood"]PropertyValue[{%, 2}, "Material"]辺の特性 (2)
標準的な辺の特性にはEdgeStyleが含まれる:
g = CompleteGraph[4]SetProperty[{g, 12}, EdgeStyle -> Brown]SetProperty[{g, 12}, EdgeLabels -> 12]SetProperty[{g, 34}, EdgeShapeFunction -> "HalfFilledDoubleArrow"]不可視特性にはEdgeWeightが含まれる:
SetProperty[{g, 12}, EdgeWeight -> 42]PropertyValue[{%, 12}, EdgeWeight]SetProperty[{[image], 24}, "Resistance" -> 50.]PropertyValue[{%, 24}, "Resistance"]アプリケーション (3)
Foldを使ってSetPropertyを繰り返し適用する:
g = CycleGraph[8, VertexSize -> Large]Fold[SetProperty[{#1, #2}, VertexStyle -> ColorData[45, #2]]&, g, Range[1, 5]]FoldList[SetProperty[{#1, #2}, VertexStyle -> ColorData[45, #2]]&, g, Range[1, 6]]g = CompleteGraph[4]SetProperty[{g, 1}, VertexSize -> Medium]SetProperty[{g, 2}, VertexSize -> Medium]g = CompleteKaryTree[4, 3, DirectedEdges -> True]ListAnimate[Reap[BreadthFirstScan[g, {"FrontierEdge" -> (Sow[SetProperty[{g, #}, EdgeStyle -> Red]]& )}]][[2, 1]], DefaultDuration -> Length[EdgeList[g]] / 2, SaveDefinitions -> True]特性と関係 (6)
Propertyをラッパーとして使ってGraph等の関数の特性を指定する:
Graph[{Property[1, {VertexSize -> Medium, VertexStyle -> Red}], 2, 3}, {12, 23, 31}]PropertyValueを使って値を抽出する:
g = CompleteGraph[4, VertexStyle -> {1 -> Red}, VertexSize -> Small]PropertyValue[{g, 1}, VertexStyle]未定義の特性については,値$Failedが返される:
PropertyValue[{g, 1}, "foo"]MemberQ[PropertyList[{g, 1}], "foo"]PropertyValueを使ってグラフの特性を設定する:
g = CompleteGraph[4]PropertyValue[{g, 1}, VertexSize] = Small;gPropertyValueを使ってグラフ特性の設定を解除する:
g = CompleteGraph[4, VertexSize -> {1 -> Small}]PropertyValue[{g, 1}, VertexSize]=.;gPropertyListを使ってある特性が存在するかどうか調べる:
g = CompleteGraph[4, VertexLabels -> {1 -> one, 4 -> four}]MemberQ[PropertyList[{g, 1}], VertexLabels]Cases[VertexList[g], v_ /; MemberQ[PropertyList[{g, v}], VertexLabels] :> v -> PropertyValue[{g, v}, VertexLabels]]RemovePropertyを使ってもとのグラフに変更を加えずに特性を取り除く:
g = CompleteGraph[4, VertexStyle -> {1 -> Red}, VertexSize -> Small]RemoveProperty[{g, 1}, VertexStyle]g考えられる問題 (1)
PropertyValueは一般にSetPropertyより高速である:
g = CycleGraph[1000];Timing@Do[PropertyValue[{g, v}, VertexWeight] = RandomReal[], {v, VertexList[g]}]g = CycleGraph[1000];Timing@Do[g = SetProperty[{g, v}, VertexWeight -> RandomReal[]], {v, VertexList[g]}]関連するガイド
-
▪
- グラフプログラミング ▪
- グラフの特性 ▪
- 特性
テキスト
Wolfram Research (2010), SetProperty, Wolfram言語関数, https://reference.wolfram.com/language/ref/SetProperty.html.
CMS
Wolfram Language. 2010. "SetProperty." Wolfram Language & System Documentation Center. Wolfram Research. https://reference.wolfram.com/language/ref/SetProperty.html.
APA
Wolfram Language. (2010). SetProperty. Wolfram Language & System Documentation Center. Retrieved from https://reference.wolfram.com/language/ref/SetProperty.html
BibTeX
@misc{reference.wolfram_2026_setproperty, author="Wolfram Research", title="{SetProperty}", year="2010", howpublished="\url{https://reference.wolfram.com/language/ref/SetProperty.html}", note=[Accessed: 19-July-2026]}
BibLaTeX
@online{reference.wolfram_2026_setproperty, organization={Wolfram Research}, title={SetProperty}, year={2010}, url={https://reference.wolfram.com/language/ref/SetProperty.html}, note=[Accessed: 19-July-2026]}