MCPcopy Create free account
hub / github.com/PyQt5/PyQt / __setAxisX

Method __setAxisX

Test/ChartView/ChartView.py:237–263  ·  view source on GitHub ↗
(self, axisx=None)

Source from the content-addressed store, hash-verified

235 self._chart.createDefaultAxes()
236
237 def __setAxisX(self, axisx=None):
238 if not axisx or not isinstance(axisx, dict):
239 return
240 series = self._chart.series()
241 if not series:
242 return
243 types = axisx.get("type", None)
244 data = axisx.get("data", []) or []
245 if not data or not isinstance(data, list):
246 return None
247 minx = self._chart.axisX().min()
248 maxx = self._chart.axisX().max()
249 if types == "category":
250 xaxis = QCategoryAxis(
251 self._chart, labelsPosition=QCategoryAxis.AxisLabelsPositionOnValue)
252 # 隐藏网格
253 xaxis.setGridLineVisible(False)
254 # 刻度条数
255 tickc_d = len(data)
256 tickc = tickc_d if tickc_d > 1 else self._chart.axisX().tickCount()
257 xaxis.setTickCount(tickc)
258 # 强制x轴刻度与新刻度条数一致
259 self._chart.axisX().setTickCount(tickc)
260 step = (maxx - minx) / (tickc - 1)
261 for i in range(min(tickc_d, tickc)):
262 xaxis.append(data[i], minx + i * step)
263 self._chart.setAxisX(xaxis, series[-1])
264
265 def __analysis(self, datas):
266 '''

Callers 1

__analysisMethod · 0.95

Calls

no outgoing calls

Tested by

no test coverage detected