Thep Excel

SAMPLEAXISWITHLOCALMINMAXสุ่มตัวอย่างแกน X โดยคงค่า min/max ในแต่ละช่วง

คืนตารางย่อยจากตารางต้นทางโดยแบ่งแกน X เป็นช่วงเท่า ๆ กัน และคงแถวที่ให้ค่า Measure ต่ำสุด/สูงสุดในแต่ละช่วง (ต่อซีรีส์) เพื่อช่วยลดจำนวนจุดสำหรับการแสดงผล

fx
=SAMPLEAXISWITHLOCALMINMAX(<Size>, <Table>, <Axis>, <Measure> [, <Measure>], <MinResolution> [, <DynamicSeries> [, <DynamicSeries>]] [, <DynamicSeriesSelectionCriteria>] [, <DynamicSeriesSelectionOrder>] [, <MaxResolution>] [, <MaxDynamicSeries>] [, <MaxIterations>])

ความนิยม2/10
ความยาก6/10
ประโยชน์2/10

อัปเดต 13 December 2025

Syntax & Arguments

อาร์กิวเมนต์ ชนิด ค่าเริ่มต้น คำอธิบาย
Size number จำนวนแถว “เป้าหมาย” ที่ต้องการให้ผลลัพธ์พยายามคืนมา (อาจได้ไม่ครบตามนี้ขึ้นกับข้อมูลและพารามิเตอร์ความละเอียด)
Table table ตารางต้นทาง (table expression) ที่ต้องการสุ่มตัวอย่าง; ผลลัพธ์จะคงคอลัมน์เดิมตามตารางนี้
Axis column คอลัมน์ตัวเลขหรือวันที่ที่ใช้เป็นแกน X สำหรับแบ่งเป็นช่วง (bin)
Measure expression นิพจน์/เมเชอร์ที่ใช้หา local min/max ภายในแต่ละช่วงของแกน X (สามารถใส่ได้มากกว่า 1 ตัว)
MinResolution number ค่าความละเอียดขั้นต่ำของการแบ่งช่วง/การวนหา (ใช้ควบคุมว่าจะแบ่งช่วงถี่แค่ไหน)
[DynamicSeries]ไม่บังคับ column ไม่ระบุ คอลัมน์ที่ใช้แยกซีรีส์ (เช่น ประเภทสินค้า/สาขา) เพื่อคง local min/max แยกตามซีรีส์; ระบุได้หลายคอลัมน์
[DynamicSeriesSelectionCriteria]ไม่บังคับ expression ไม่ระบุ เกณฑ์คัดเลือกซีรีส์แบบไดนามิก (ใช้เมื่อจำนวนซีรีส์เยอะและต้องเลือกบางส่วน)
[DynamicSeriesSelectionOrder]ไม่บังคับ expression ไม่ระบุ นิพจน์สำหรับจัดลำดับซีรีส์ก่อนคัดเลือก
[MaxResolution]ไม่บังคับ number ไม่ระบุ ค่าความละเอียดสูงสุดที่อนุญาตให้เพิ่มได้ (ช่วยจำกัดการแบ่งช่วงให้ไม่ถี่เกินไป)
[MaxDynamicSeries]ไม่บังคับ number ไม่ระบุ จำนวนซีรีส์สูงสุดที่จะนำมาพิจารณา
[MaxIterations]ไม่บังคับ number ไม่ระบุ จำนวนรอบการทำซ้ำสูงสุดเพื่อให้เข้าใกล้จำนวนแถวเป้าหมาย

[ ] = อาร์กิวเมนต์ที่ไม่บังคับ

Additional Notes

SAMPLEAXISWITHLOCALMINMAX ใช้ “ลดจำนวนแถว/จุดข้อมูล” จากตารางต้นทางเพื่อการแสดงผล (เช่น กราฟเส้นที่มีจุดหนาแน่นมาก) โดยจะแบ่งแกน X หลักออกเป็นช่วง (bin) ขนาดเท่ากัน แล้วเลือกแถวที่ทำให้ค่า Measure ในช่วงนั้นเป็นค่าต่ำสุด/สูงสุด (local min/max) ต่อแต่ละซีรีส์ เพื่อให้รูปทรงกราฟยังใกล้เคียงของจริงแม้จำนวนจุดลดลง

How it works

ลดจำนวนจุดในกราฟเส้นที่หนาแน่นมาก

เมื่อข้อมูลมีหลายแสนจุด การสุ่มตัวอย่างช่วยให้แสดงผลเร็วขึ้น โดยยังรักษายอด/จุดต่ำสุด-สูงสุดในแต่ละช่วง

คงลักษณะกราฟเมื่อมีหลายซีรีส์

กำหนด DynamicSeries เพื่อให้การคง min/max ทำแยกตามซีรีส์ ไม่ทำให้รูปทรงบางซีรีส์เพี้ยน

Examples

ตัวอย่างที่ 1: สุ่มตัวอย่างจุดบนแกนวันที่ (แนวคิด)จุดตัวอย่าง (แนวคิด) = VAR Base = ADDCOLUMNS( VALUES('Date'[Date]), "ยอดขาย", [Sales Amount] ) RETURN SAMPLEAXISWITHLOCALMINMAX( 200, Base, 'Date'[Date], [Sales…

Base คือจุดจริงทั้งหมดบนแกน X แล้ว SAMPLEAXISWITHLOCALMINMAX เลือกเฉพาะแถวสำคัญในแต่ละช่วง เพื่อลดจำนวนจุด

fx
=จุดตัวอย่าง (แนวคิด) =
VAR Base =
ADDCOLUMNS(
VALUES('Date'[Date]),
"ยอดขาย", [Sales Amount]
)
RETURN
SAMPLEAXISWITHLOCALMINMAX(
200,
Base,
'Date'[Date],
[Sales Amount],
16
)

ผลลัพธ์ได้ตารางจุดตัวอย่างจำนวนจำกัดตามแกนวันที่ โดยคงจุดที่ทำให้ยอดขายต่ำสุด/สูงสุดในแต่ละช่วง
ตัวอย่างที่ 2: คงค่า min/max แยกตามซีรีส์ (แนวคิด)จุดตัวอย่างแยกซีรีส์ (แนวคิด) = VAR Base = SUMMARIZECOLUMNS( 'Date'[Date], 'Product'[Category], "ยอดขาย", [Sales Amount] ) RETURN SAMPLEAXISWITHLOCALMINMAX( 500…

ระบุ DynamicSeries เป็นคอลัมน์ที่แทนซีรีส์ เพื่อให้การคง min/max ทำเป็นรายซีรีส์

fx
=จุดตัวอย่างแยกซีรีส์ (แนวคิด) =
VAR Base =
SUMMARIZECOLUMNS(
'Date'[Date],
'Product'[Category],
"ยอดขาย", [Sales Amount]
)
RETURN
SAMPLEAXISWITHLOCALMINMAX(
500,
Base,
'Date'[Date],
[Sales Amount],
16,
'Product'[Category]
)

ผลลัพธ์ได้จุดตัวอย่างที่ยังคงจุดสูง/ต่ำในแต่ละช่วงแยกตาม Category
ตัวอย่างที่ 3: คุมจำนวนซีรีส์สูงสุด (แนวคิด)แนวคิด: ใช้ MaxDynamicSeries เมื่อมีซีรีส์เยอะมาก SAMPLEAXISWITHLOCALMINMAX( 500, <Table>, <Axis>, <Measure>, 16, <DynamicSeries>, , , ,…

ฟังก์ชันนี้มีพารามิเตอร์หลายตัวเพื่อคุมความละเอียด/จำนวนซีรีส์/จำนวนรอบ ให้เลือกใช้เท่าที่จำเป็นกับงานจริง

fx
=แนวคิด: ใช้ MaxDynamicSeries เมื่อมีซีรีส์เยอะมาก
SAMPLEAXISWITHLOCALMINMAX(
500,
<Table>,
<Axis>,
<Measure>,
16,
<DynamicSeries>,
,
,
,
25
)

ผลลัพธ์ช่วยจำกัดภาระการคำนวณ/การสุ่มตัวอย่างเมื่อจำนวนซีรีส์มากเกินไป

FAQs

SAMPLEAXISWITHLOCALMINMAX เหมาะกับงานแบบไหน?+

เหมาะกับงานลดจำนวนจุดเพื่อการแสดงผล (visual downsampling) โดยยังรักษาลักษณะกราฟผ่านจุดต่ำสุด/สูงสุดในแต่ละช่วง

ผลลัพธ์คืนคอลัมน์อะไรบ้าง?+

ผลลัพธ์คืนตารางที่มีคอลัมน์เหมือนกับตารางอินพุต (Table) ดังนั้นควรเตรียมคอลัมน์แกน X และคอลัมน์/เมเชอร์ที่ต้องใช้ก่อน

Resources & Related

ฟังก์ชันที่ผู้เขียนโยงไว้กับ SAMPLEAXISWITHLOCALMINMAX จัดกลุ่มตามหมวด · ชี้ที่ชื่อใดชื่อหนึ่ง แล้วฟังก์ชันที่ใช้คู่กันจะมีจุดทอง

ฟังก์ชันนี้SAMPLEAXISWITHLOCALMINMAXTable manipulation
Table manipulation (4)
SUMMARIZECOLUMNS

SUMMARIZECOLUMNS เป็นฟังก์ชันหลักสำหรับสร้างตารางสรุปผล โดยจัดกลุ่มตามคอลัมน์ที่กำหนด พร้อมเพิ่มคอลัมน์คำนวณจากเมเชอร์ และสามารถใส่เงื่อนไขกรองได้ทันที

TOPN

คืนตาราง Top N แถวจากตารางที่กำหนด โดยเรียงตามนิพจน์หนึ่งตัวหรือมากกว่า สามารถระบุทิศทางการเรียงลำดับแยกต่างหากสำหรับแต่ละเกณฑ์

TREATAS

TREATAS เป็นเสมือนการสร้าง "virtual relationship" โดยไม่ต้องแก้โมเดล ช่วยให้ส่งเงื่อนไขข้ามตารางที่ไม่เชื่อมกัน หรือเมื่อต้องการส่งหลายคีย์พร้อมกัน

VALUES

VALUES ดึงค่าที่ไม่ซ้ำจากคอลัมน์ หรือดึงแถวทั้งหมดจากตาราง โดยรวมแถว BLANK ที่เกิดจากข้อผิดพลาดของความสัมพันธ์ (Referential Integrity Violations) ส่วน DISTINCT จะไม่รวมแถว BLANK นี้

Comments

อีเมลของคุณจะไม่ถูกเผยแพร่