การสร้างกราฟวงกลมด้วยเวกเตอร์ / ลูกศร

Aug 20 2020

ฉันมีคำถามที่ไม่แน่ใจว่าต้องทำอย่างไร

การสร้างวงกลมสองวงไม่ใช่ปัญหา แต่ฉันติดอยู่กับวิธีดำเนินการในขั้นตอนที่ 2 ฉันขอความช่วยเหลือได้ไหม

ก) วงกลมสองวงที่อยู่ตรงกลางจุดเดิมวงหนึ่งมีรัศมี 2 เป็นสีแดงและอีกวงมีรัศมี 3 เป็นสีน้ำเงิน

b) เวกเตอร์สองชุดชุดหนึ่งประกอบด้วยเวกเตอร์จากจุดเดิมไปยังจุด (2cos (x), 2sin (x)) เนื่องจาก x มีค่าตั้งแต่ 0 ถึง2πในช่วงเวลาπ / 16 และอีกชุดหนึ่งประกอบด้วยเวกเตอร์จาก จุด (3cos (x), 3sin (x)) ถึงจุด (2cos (x), 2sin (x)) เนื่องจาก x มีค่าตั้งแต่ 0 ถึง2πตามช่วงเวลาของπ / 16 หมายเหตุ: เวกเตอร์ทั้งหมดของสองชุดเป็นสีแดง ผลลัพธ์ควรจะเหมือนกับรูปในหน้าถัดไป

จำเป็น

คำตอบ

4 kglr Aug 20 2020 at 07:24
divs = Transpose @ Through @ {Cos, Sin} @ Subdivide[0, 2 Pi, 32];

{r1, r2} = {2, 3};

Graphics[{Thick, Blue, Circle[{0, 0}, r2], Red, Circle[{0, 0}, r1], 
  Thin, Arrowheads[{{-.05, r1/r2}, {.05, r1/r2}}], Arrow[{{0, 0}, r2 #}] & /@ divs}, 
 PlotRangePadding -> Scaled[.08], 
 ImagePadding -> 40, 
 AxesStyle -> Directive[14, Black, Arrowheads[.05]], 
 Axes -> True,
 AxesLabel -> (Style[#, 16] & /@ {"x", "y"}), 
 Background -> RGBColor[0.8354, 0.8, 0.6315], 
 ImageSize -> Large]