การดำเนินการแบบมีเงื่อนไขตามเวอร์ชัน Gnuplot

เนื่องจาก Gnuplot 4 และ Gnuplot 5 เข้ากันไม่ได้บางส่วน ฉันจึงต้องการให้ดำเนินการแบบมีเงื่อนไขตามเวอร์ชัน Gnuplot เช่น เพื่อตั้งค่า linewidth ด้วย Gnuplot 4 และ linewidth อื่น ๆ ด้วย Gnuplot 5 ฉันจะทำสิ่งนี้ทั้งหมดในสคริปต์ Gnuplot ได้อย่างไร (เช่นโดยไม่ต้องใช้ตัวห่อสคริปต์เชลล์)


person vinc17    schedule 19.02.2015    source แหล่งที่มา


คำตอบ (1)


ตัวแปร GPVAL_VERSION จะถูกตั้งค่าเป็นหมายเลขเวอร์ชันเสมอ คุณสามารถใช้มันเหมือนกับตัวแปรอื่นๆ โปรดทราบว่าเป็นตัวเลข ไม่ใช่สตริง หากต้องการดูตัวแปรอื่นๆ ที่กำหนดโดย gnuplot ให้พิมพ์คำสั่ง "show var all"

person Lee Phillips    schedule 19.02.2015
comment
จากนั้น OP สามารถใช้ if clauses เพื่อสลับระหว่างเวอร์ชันต่างๆ โปรดสังเกตว่าหากเวอร์ชันเก่ามาก if clauses จะทำงานแตกต่างออกไปหรือไม่ทั้งหมด ตัวอย่างง่ายๆ: if (GPVAL_VERSION == 4.6) {print "Version is 4.6"} else {if (GPVAL_VERSION == 5.0) {print "Version is 5.0"}} - person Miguel; 19.02.2015
comment
ขอบคุณ. ดังนั้น ฉันยังสามารถใช้มันในตัวดำเนินการที่ประกอบไปด้วย เช่น: mylw = GPVAL_VERSION < 5 ? 2 : 1 - person vinc17; 19.02.2015