tôi có thể có được một màu ListLinePlot
bằng cách làm một cái gì đó giống nhưđiểm cá nhân trong ListPlot, ErrorListPlot trong Mathematica
ListLinePlot[Range[420, 680, 20], ColorFunction -> "VisibleSpectrum", ColorFunctionScaling -> False]
Tuy nhiên, như được chỉ ra bởi các tập tin trợ giúp (" ColorFunction
đòi hỏi ít nhất một bộ dữ liệu là Joined
"), nếu tôi làm tương đương
ListPlot[Range[420, 680, 20], ColorFunction -> "VisibleSpectrum", ColorFunctionScaling -> False]
tất cả các điểm của tôi đều có màu xanh lam. Có cách nào tốt đẹp để có được ColorFunction
để làm việc cho ListPlot
với Joined -> False
?
Đó là, là có một cách đẹp hơn để có được một cái gì đó giống như
ListPlot[
List /@ Transpose[{Range[(680 - 420)/20 + 1], Range[420, 680, 20]}],
PlotMarkers -> ({Graphics[{#, Disk[]}], 0.05} & /@ ColorData["VisibleSpectrum"] /@ Range[420, 680, 20])
]
?
(Ngoài ra, không ai có một lời giải thích của tại sao Mathematica đòi hỏi Joined -> True
để tận dụng ColorFunction
?)
Chỉnh sửa: Tôi cũng đang tìm kiếm một cách để làm một màu tương tự với ErrorListPlot
trong gói ErrorBarPlots
.
Có giải pháp tốt đẹp tương tự cho 'ErrorListPlot' trong gói' ErrorBarPlots' không? –
Và bạn có thể thêm một cái gì đó như 'PlotStyle -> AbsolutePointSize [5]' trong mã - tức là mã vẽ các dòng - để điều khiển kích thước điểm cuối cùng. –
@ Jason, một 'ErrorListPlot' không thể được tô màu bằng một mẹo ngắn như trên vì ít nhất hai lý do: Các đối tượng cần có cùng màu được chia thành nhiều chỉ thị Đồ họa. Bạn sẽ phải tìm các dòng và điểm tương ứng. Lý do thứ hai là, * một * điểm có * một * vị trí được sử dụng cho màu sắc. Một 'ErrorBar' có một số vị trí khác nhau. Vì vậy, nó không rõ ràng mà một trong những bạn thích sử dụng cho màu sắc. Kiểm tra 'InputForm' của' ErrorListPlot' của bạn. – halirutan